作者IOP14759 (iop14759)
看板Electronics
標題[問題] PIC用Timer0來輸出方波
時間Thu Oct 26 17:31:39 2017
小弟算剛學單晶片,目前手邊就是兩本書+MPLAB內建的仿真
方波都是用WHILE迴圈裡面直接RB0=1;RB0=0;這樣來做
今天知道可以用Timer0來輸出方波可以做到有點向PWM那樣控製脈波寬度
GOOGLE一下看的還是霧薩薩,可能我找資料能力較差
想請問有大大有這方面的資料嗎?(目前是學C語言的,單晶片是Microchip的PIC)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.158.217
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Electronics/M.1509010303.A.F6C.html
1F:推 guecet: Microchip 產品很多捏 10/26 22:47
2F:推 stool100: 變數uc p;TIMER中斷 out=(p++>n)?1:0; 10/26 23:00
3F:推 HiJimmy: 是指用計時中斷?? 10/27 00:45
16F57好像沒有Interrupt的功能的樣子,我看SPEC只有TIMER0暫存器
4F:→ HiJimmy: 給看是正在用的是那一顆,這樣比較好舉例 10/27 00:46
我是用PIC16F57,只要有相關資料参考就可以
※ 編輯: IOP14759 (60.248.158.217), 10/27/2017 09:05:48
※ 編輯: IOP14759 (60.248.158.217), 10/27/2017 09:10:23
5F:→ MasterChang: 57很舊了,去上RTC課程看現在他們用哪顆。 10/27 09:27
我自己查了一些資料,目前寫出來是
void main(void)
{
unsigned char T0B; // 記錄 Timer0 計數值
TRISC=0b00000000; // 設定 PORTC
OPTION = 0b00000100; // 開啟 Timer0 並設定除頻
T0B =*********; //TMR0最後一個BIT
while (1)
{RC0=T0B;
}
}
我想請教要在******那段怎樣填才能抓到TMR0最後一個BIT?
又或者我目前這樣寫的是完全錯誤的?
※ 編輯: IOP14759 (60.248.158.217), 10/27/2017 11:17:29
6F:→ weiweider: 官方不是有範例code?,改一下就好了 10/27 14:14
7F:推 zzss2003: 我也正在學習喔,可以一起討論y 10/29 11:50