| WASA-DENSOH |
第2回動作確認
では、マイコン回路に試しにプログラムを書き込んでみましょう。
MPLABでプログラムを書く→dspicguyでプログラムを書き込む→動作させる。
って手順をやってみましょう。
1、まずMPLABを起動してください。
を見て。プロジェクトを作ってください。
そしてを参考にしながらプログラムを書き込みましょう。が、書いていると面倒なのでコピーして貼り付けてください。
これがプログラムです、
#include<p30f2012.h> #define LCD_E LATFbits.LATF4 #define LCD_RS LATFbits.LATF5 unsigned char t; void _ISR _AltT1Interrupt(void){ IFS0bits.T1IF=0; if (t)t=0;else t=1; LATCbits.LATC13=t; } void port_init(void){ TRISB=0x0f; TRISFbits.TRISF4=0; TRISFbits.TRISF5=0; TRISCbits.TRISC13=0; TRISDbits.TRISD9=1; LCD_E=0; } void lcd_init(void){ delay_sec(20); lcd_write2(0x30,0); delay_sec(5); lcd_write2(0x30,0); delay_sec(5); lcd_write2(0x30,0); delay_sec(5); lcd_write2(0x20,0); delay_sec(5); lcd_write(0x2E,0); lcd_write(0x08,0); lcd_write(0x0D,0); lcd_write(0x06,0); lcd_write(0x02,0); delay_sec(5); } void lcd_write(unsigned char c,char cc){ lcd_write2(c,cc); lcd_write2(c<<4,cc); delay_sec(2); } void lcd_write2(unsigned char c,char cc){ LATB=c; LCD_RS=cc; delay_sec(0); LCD_E=1; delay_sec(0); LCD_E=0; delay_sec(1); } void delay_sec(int i){ int ii; while(i){ for(ii=0;ii<0xffff;ii++) asm("NOP"); i--; } } void main(void){ port_init(); lcd_init(); INTCON2bits.ALTIVT=1; SRbits.IPL=2; T1CON=0; TMR1=0; PR1=0xFFFF; T1CON=0b1000000000110000; IPC0bits.T1IP=3; IFS0bits.T1IF=0; IEC0bits.T1IE=1; lcd_write('O',1); while(1){ } }そして、コンパイルをしてください。
(
ちなみに コンパイルしたものをここに置いておきます。
dspic_test.hex右クリックから「対象をファイルに保存」で保存してください
)
2、dspicguyで書き込み。
マイコン基板をシリアル通信ケーブルでパソコンと接続してください。
繋ぎました?
そしたらdspicguyを起動してください。ちいさい画面が出てくると思います。
その画面の、COMポート番号をシリアル通信ケーブルのポート番号に合わせてください。
そしたら、さっき作ったdspic_test.hexをOPEN_HEXボタンを押して選んでください
画面へファイルをドラッグ&ドロップでもOKです。
そしたらマイコン基板の黒いスイッチありましたよね?マイコンのそばの。あれを液晶側に切り替えてから電源を入れてください。
電源LEDだけでなく、マイコンの右側のLEDも1つだけついたと思います。
そしたらマイコン基板の押しボタンを押してください。LEDが2つともついたと思います。
これで通信スタンバイです。
できたらdspicguyのDOWNLOADボタンを押してください。転送が始まるとLEDがチカチカし始めます。転送が終わったら2つついていたLEDがチカチカした後1つだけになります。
そうなったら転送成功です。マイコンの電源を切って切り替えスイッチを下にしてください。もう1ど電源を入れると液晶に「OK」の文字が出るはずです。
まとめるとこんな感じ。
切り替えスイッチ 上:プログラム書き込みモード
この状態で電源を入れてボタンを押すとLEDが2つついて転送スタンバイ。
下:プログラム実行モード
この状態で電源を入れるとプログラムが実行される。
電源が入った状態でこのスイッチを切り替えないこと!プログラム転送手順 1 マイコンとパソコンをつなぎ、「プログラム書き込みモード」でマイコンを起動。 2 dspicguy起動。COMポートを設定して、書き込みたいプログラムを選ぶ 3 DOWNLOADボタンを押して書き込む。 4 書き込みが終わると点滅していたLEDが1つに。マイコンの電源を切る 5 スイッチを切り替え「プログラム実行モード」にして起動。
上手くいかない場合:
配線は正しいですか?→確認してください。
COMポートは正しいですか?→dspicguyのCOMポート設定の数字を1から順番に切り替えて 通信できるポートを探してください。正解は1つです。