mice @ wiki内検索 / 「Lesson5(AD変換器)」で検索した結果

検索 :
  • Lesson5(AD変換器)
    ついにやってきました、AD変換です。 ぶっちゃけ、タイマーとADが出来れば想像力次第で 大抵のものは作れる気がします。 というか、ココまでのLessonを理解できていればマイコンを使える、とえらそうに言っても問題なさそうです(笑 まず、AD変換とはアナログ→デジタル変換の略です。 ここで、アナログ、デジタルの概念は大丈夫でしょうか? アナログとは、連続しているものの事を指します。 例えば、Sin波を想像してください。 Xを時間軸とすると、どこかひとつ点を取って、それを数値化しようとしても 有限の桁数で「正確に」数値化することは不可能かと思います。 それでは、値がとれず、計算が出来ません。 そこで、大雑把な値にしてしまうことをデジタル化といいます。 デジタルとは離散的変数の、なんていう意味で使われています。 例えば、Sin波のyの値を0...
  • ライントレーサーを走らせる
    ...タイマー割り込み) Lesson5(AD変換器) Lesson6(PWMとは) 期末テスト 追試1 追試2 電気回路編 電源 モータドライバ ハード面での改良のヒント ギア比 電流 センサ 書いて欲しいこととか、役に立ったこととか、間違ってるとことかもコメントくださいな。 -- yuta (2008-06-16 01 51 01) 名前 コメント
  • Lesson1(出力)
    ここからライントレーサーのプログラムを作るための流れを 少しずつ課題をクリアしていく、という感じで説明していきます。 とはいっても、いくらプログラム(ソフト)が正しくても、回路(ハード)がダメであれば動きません。逆もまた然りです。 絶対に正しいと思うのに思い通りに行かないときは回路も疑ってみましょう。勿論周りに聞くのも手です。 まず、最初は 「LEDを3つとも光らせる」 です。 流石に参考書レベルに書くつもりは無いので、 「C言語による H8マイコン プログラミング入門」 を持っていることを前提に進んでいきます。 また、ちなみに16進数と2進数と10進数の変換は出来ることを前提としています。 まず、H8のどのポートにLEDがつながっているかを確認してください。 今回はポート8の0,1,2BITについている時を例に説明し...
  • Lesson6(PWMとは)
    PWMとは、DCモータの制御には不可欠な方法です。 まず、PWMとは(Pulse Width Modulation)の略で パスル幅変調、と訳されます。 どういうことかというと 例えば、赤と青の色を右半分、左半分にそれぞれ塗ったコマを回すと 紫色に見えるのは判ると思います。 でも、とまっているときは赤と青です。 なぜ紫に見えるのかと言うと、人間の目の性能では、コマの回転速度に 付いていけないからです。 色が切り替わるのが早すぎるわけです。 ここで、目をDCモータ、赤を0V,青を5Vとすると 0V、5Vを高速で、つまりモーターの応答速度が追いつかないほどの速度で 切り替えたとすると、モータからすると、まるで2.5Vがかかっているかのような状態になります。 例えば、0Vにしている時間と5Vにしている時間の比を1 1ではなく、4:1にすると...
  • Lesson3(入力とif文)
    スイッチを押すとLEDが点灯するようにして見ましょう。 if文を使って実現してみてください。 ifは if(条件式){ 真のときに実行される内容 } else{ 偽のときに実行される内容 } という感じです。 また、スイッチを使うときはプルアップコントロールレジスタ(PCR)をONにする(1でON)ことを忘れないで下さい。 PCRは P4.PCR.BYTE=0xff; というように使います。 で、スイッチのつながっているピンは押されている間0Vになります。 つまり、例えばP4のBIT0にスイッチが繋がっていて いま押されていないとすると P4.DR.BIT.B0は「1」になります。 押されていれば「0」になります。 つまり if(P4.DR.BIT.B0 == 0){ 光らせる ...
  • ビットシフトの使い方
    ビットシフトには前章のように、ビットごとに値を操作する使い方よりも、 演算として使用する頻度が高い(気がする)演算です。 ビットごとの処理に使ってみる 出力の時 例えば、3052のP8に,BYTEアクセスで(LEDの点灯の)状態を書き込みたい時、 led0,led1,led2という変数に0か1が入っているとして、 (それぞれ0,1,2bit目に対応とすると) P8.DR.BYTE = (P8.DR.BYTE 0xf8) ;//クリアしておく P8.DR.BYTE = P8.DR.BYTE | led0 | (led1 1) | (led2 2);   みたいな書き方ができます。 P8.DR.BYTE = (P8.DR.BYTE 0xf8) ;//クリアしておく P8.DR...
  • Lesson2(While文)
    LEDを点滅させて見ましょう。 While文を使って実現してみてください。 While文の使い方は ここが参考になると思います。 ヒント Whileが1回ループするたびに、変数を減らしていけば、そのうち0になるよねー。 While()の()の中って、0になればループが終わるよねー。 ※ちゃんとできたはずなのに点滅してないよー、って人へ。 H8の実行速度は思ったより速いです。 変数を型宣言の範囲内で大きくしてみると上手く行くかも?
  • Lesson4(タイマー割り込み)
    タイマー割り込みとは何でしょう。 今まで書いてきたプログラムは、上から下まで順に実行する(サブルーチンはその通り飛ぶとして)ものです。 これが出来ればライントレースも大分近くなります。 頑張りましょう! 例えれば、 Aさんと話す→(話し終わる)→Bさんと話す というようなものです。とりあえずひとつづつ消化しなくてはいけません。 これが割り込みというシステムを使うと、 Aさんと話す→Bさんが話しかけてくる→Aさんに待ってもらう→Bさんと話す→(話し終わる)→Aさんとの話の続きをする と言う感じになります。 プログラム的には、Main文で「Aさんと会話」、割り込み文で「Bさんと会話」と言う感じです。 つまり、同時に色々なことをしたいときに良く使うものです。 例のように「Bさんが話しかけてくる」というような 何かのアプローチがあっ...
  • 開発環境
    開発環境の作り方 Miceでは「GDL」と「H8 Write Turbo」というソフトを使って H8-3052マイコンに書き込める環境を作ります。 また、USB-Serial変換ケーブルは秋月のものとします。 これらのソフトはMiceのPCのデスクトップに入ってますので 探してみてください。 GCC Developer Lite GDLの最新版はベストテクノロジー(http //www.besttechnology.co.jp/)からDLできます。 GDLはセットアップにしたがってインストールしてください。 その後、同じページにある H8/300Hシリーズターゲットファイル というのをDLします。 適当な場所に保存した後、H8300HTARGETを解凍し、中身を全て C \Program Files\B...
  • プラグイン/ニュース
    ニュース @wikiのwikiモードでは #news(興味のある単語) と入力することで、あるキーワードに関連するニュース一覧を表示することができます 詳しくはこちらをご覧ください。 =>http //atwiki.jp/guide/17_174_ja.html たとえば、#news(wiki)と入力すると以下のように表示されます。 【グランサガ】リセマラ当たりランキング - グランサガ攻略wiki - Gamerch(ゲーマチ) マニュアル作成に便利な「画像編集」機能を提供開始! - ナレッジ共有・社内wikiツール「NotePM」 (2021年12月6日) - エキサイトニュース マニュアル作成に便利な「画像編集」機能を提供開始! - ナレッジ共有・社内wikiツール「NotePM」 - PR TIMES 「Wiki」創設者のPC 競売に - ...
  • Advanced Class 09
    こんにちわわ。 課題提出用のスペースです。 リンクだけは作っておいたので、 自分の名前をクリックして新規作成をして、 自分のページを作って課題を乗っけてください。 もちろん説明も書いてくださいネ。 質問用掲示板 かずくん さくらこ れもんてぃ みみりん 野生児アーサー あややん いとぅし なかせし わだぶぅ
  • おもも
    おもも 皮付き。 皮はいだ。 ていうか写真おっきかった。直すのめんどくさいのでこのまま。 総制作費1万以下。 超低コスト。 主なスペックは マイコン    SH-7125(秋月の 電池      リチウムポリマー330mA*2 センサ     可視光センサ*4 ジャイロセンサ(ENC-03R) モータ     コアレスモータを166KHzで150段階のPWM駆動 エンコーダ   36パルス/回転 ⇒ 4逓倍 計算上の最高速は2.67m/s。 加速度は忘れました…。 皮が25gあります。 つけるかつけないかで性能が大きく変わります。 なによりぶつかった時の復帰率がかなり違います。 斜めの成功率が大幅にダウンします。 でも、皮はつけます。 探索方式はちょっと変わっていて 足立法をはめる迷路を得意...
  • メニュー
    部員のページ 部員の紹介 みんなの製作物 プチ大会のルール 09入学 08入学 さくらちゃん 知ってると得な(?)C言語 07入学 06入学 yuta ライントレーサーを走らせる ライントレーサーを大会に出す Advanced Class 09 メニュー トップページ プラグイン紹介 メニュー メニュー2 wiki使い方 カウンター 今日: - 昨日: - 合計: - リンク @wiki @wikiご利用ガイド 他のサービス 無料ホームページ作成 無料ブログ作成 無料掲示板レンタル 2ch型掲示板レンタル お絵かきレンタル 更新履歴 取得中です。 ここを編集
  • 書き込んでみよう
    あなたは「はんだづけが終わった!」って人ですね。 今からやっとプログラムに入れる! と思ってるかもしれませんが、まだもう少し頑張らないといけません。 ちなみに、ピンの読み方、テスターの使い方、開発環境の作り方は判ることを前提としているので 分からない人は誰かに教えてもらってください。 マイコンがオシャカにならないために最低限の確認。 まず、マイコンをはずします。 充電済みの電池をつなぎます。 スイッチを入れます。 右上のLEDが光ることを確認してください。 光らなければすぐに電源を切りましょう。 次に、センサー(配線図の上部中央)を携帯電話のカメラモード(赤外線を見ることが出来るから)で見てください。 3つとも、2つセットのうち片方だけ紫っぽい色に点灯して見えればOKです。 CN2の1...
  • 中間テスト
    今までのことを総合して スイッチを一度押すとLEDが光、もう一度押すとモーターが回る というプログラムを作ってみましょう。 おそらくここで二つ新しい問題が出てきます。 チャタリングと、プログラムの実行速度の速さです。 チャタリングは、文で説明するのは難しいのですが スイッチが押される瞬間、接点で機械的な振動や空中放電などで ON,OFFを高速で繰り返すことになってしまう現象です。 つまり、一回押しただけで何十回とスイッチを連打したような現象が起きます。 これを解決するには、スイッチを押した後チャタリングが終了するまで(0.1sぐらい?)時間稼ぎをする事が有効です。 Whileなどで適当な時間稼ぎをすると良いかと思います。 ifを使って実現するヒントは、 スイッチを押すたびに変化する変数を作る、ということ。 ...
  • test1
    7月6日(Sun.)
  • うーたん
    うーたんです。 内臓(あたま) 内臓(おしり) この子正直かなり目立ちます。 大会会場でもってると、ちょっと恥ずかしいです。 性能は マイコン          H8-3052 モーター          ステッピングモーター KH39FM2-801  ×2 モータードライバー    SLA7033 ×2 センサー         TPS601&狭角赤色発光ダイオード×4 + LM324                PSD(シャープ製) 昇圧            LM3478-ADJ×2 リポ3本⇒18V って感じです。 基本的にはぶーたんの改良です。欠点を補完しました。 チョッピング同期がないんで、うるさいです。 次もしステッパーマウス作るんだったらつ...
  • and,or の使い方
    and , or , exor がどんな物かは理解しているのを前提で進めます。 andマスク andマスクとは、andを使って必要な情報だけを取り出す事です。 次の章にある、ビットシフトと組み合わせると効果的です。 例えば16bitのデータ(data)のうち、真ん中の8bitだけ欲しい時(result)、次のようにすると、上手いことその部分だけを取り出す事ができます。 result = data 0x0ff0;   この後、4bit左にシフトしておくと更にデータが扱いやすくなります。 (ビットシフトは次章参照) result = (data 0x0ff0) 4;   または result = (data 4) 0x0ff;   orで,変数の一部だけを1にす...
  • defineの使いどころ
    defineの使いどころ ここではdefineの使いどころについて書きます。 ライントレーサくらいだとそうでもないですが、 おそらく、マウスともなるとdefineを使いこなさないと プログラムを書ききれないんじゃないかなぁと思います。 例によって構文とかは適当に調べてください。 定義文としてのdefineを説明します。 マクロは使いたいときに使えばいいんじゃないかなぁと。 定数を定義しておく プログラムの中に定数を書く事があると思います。 ライントレーサをPWMで動かしている場合、ifやswitch文の中で変数に if(~~){ speed_right = 500; speed_left = 900; }   のように定数をそのまま書いているんじゃないでしょうか。 一箇所ならまだ良いのです...
  • wiki使い方
    @wikiへようこそ ウィキはみんなで気軽にホームページ編集できるツールです。 このページは自由に編集することができます。 メールで送られてきたパスワードを用いてログインすることで、各種変更(サイト名、トップページ、メンバー管理、サイドページ、デザイン、ページ管理、等)することができます まずはこちらをご覧ください。 @wikiの基本操作 用途別のオススメ機能紹介 @wikiの設定/管理 分からないことは? @wiki ご利用ガイド よくある質問 無料で会員登録できるSNS内の@wiki助け合いコミュニティ @wiki更新情報 @wikiへお問い合わせ 等をご活用ください @wiki助け合いコミュニティの掲示板スレッド一覧 #atfb_bbs_list その他お勧めサービスについて フォーラム型の無料掲示板は@bbをご利用ください 2ch型の無料掲示板は@chsをご利用くださ...
  • 設計する
    まず、ルールを読んだ限りでは、今のままのライントレーサでは 大会に出ることは出来ないと言うことがわかります。(スタート、ゴールで止まれない) そこで、どちらかを選ばなくてはなりません。 改造する 新しく設計する の、どちらかです。 でも、まずは必要な機能を考えて見ましょう。 -ラインを読み取るセンサ フォトインタラプタ(RPR-220)で読むのであれば、最低3個はいると思われる。 -スタート、ゴール間で止まるためのセンサ ルールのところでも書いたけど、マーカーを検出するのか、ゲートを検出するのかでセンサは変わってくる。 前者であればRPR-220で、ゲートを検出するのであればPSD(千石に売ってる)という長距離用のセンサを使うのがBestかな。 -3周走ることの出来る容量の電池 これはDCモータかステッピングモータかで大きく変わってくる...
  • @wiki全体から「Lesson5(AD変換器)」で調べる

更新順にページ一覧表示 | 作成順にページ一覧表示 | ページ名順にページ一覧表示 | wiki内検索