Translate

2009年10月11日日曜日

無限ループでLEDの点滅(6) Delay_us( )

[実験 MikroC Pro PIC16F84A_LED_0008]

0.035秒(35000microseconds)間隔でdefine を使って
下記のパターンでLEDを点滅させなさい。


○○○●●○○○
○○●●●●○○
○●●○○●●○
●●○○○○●●
●○○○○○○●
○○○○○○○○











void Delay_us(const unsigned long time_in_us);
MikroC Proにはマイクロ秒(microseconds)用のDelay_us( )もあります。









PROGRAM MEMORY MAP AND STACKと
REGISTER FILE MAPです。 PIC16F84AのDatasheetより。

両側にある16進数が、ファイルのアドレスです。
一部を拡大したのが、下図です。






毎回main関数のすぐ後に
/* 出力に設定 */
TRISA = 0x00;
TRISB = 0x00;

をプログラムしていますが、PIC16F84Aの
TRISAをFile Address の85h番地、TRISB86h番地に
ビット単位で入力(Input)または出力(Output)を1、0で記録しています。


その後、PORTAをFile Address の5h番地、TRISB6h番地に
プログラムどおりビット単位でハイまたはローを1、0で記録しその後ピンに出力しています。







mikroC PRO for PIC

0 件のコメント:

コメントを投稿