欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
求各位大佬幫幫小弟啦 3個單片機問題
[打印本頁]
作者:
KESSEN
時間:
2017-8-11 09:27
標題:
求各位大佬幫幫小弟啦 3個單片機問題
C求各位大佬幫幫小弟啦~
現在我有三個問題:
1.如何用AT89c52控制三個led小燈用不同頻率閃爍?我用定時器只能做到兩個,第三個定時器我不會開
;
2.如何用AT89C52做一個按鍵控制LED1602A顯示的程序,這個我是純小白,學的時間太短了。。
3.程序我燒到單片機里后,如何和三個led小燈連接到一起才不會吧單片機燒掉。。。
感謝各位大佬!!!
作者:
yzwzfyz
時間:
2017-8-11 10:16
太浪費資源了,一個定時器就可以搞定了
作者:
KESSEN
時間:
2017-8-11 14:13
yzwzfyz 發表于 2017-8-11 10:16
太浪費資源了,一個定時器就可以搞定了
大佬可不可以詳細地說一下呢~
我是新手,搞不太懂
作者:
哈2哈哈哈哈哈1
時間:
2017-8-11 17:15
你可以調PWM
作者:
hange_v
時間:
2017-8-11 17:56
只用一個定時器計數,再來三個變量每次計數器滿了就加一,三個變量達到設定數值(三個設定數值由你的頻率決定)就切換燈的狀態。第二個問題寫好1602的驅動,根據按鍵顯示值。第三個用三極管,單片機IO口接基極。
作者:
小白@
時間:
2017-8-11 18:01
太浪費資源了,一個定時器就可以搞定了
作者:
小白@
時間:
2017-8-11 18:01
第三個用三極管,單片機IO口接基極
作者:
zl2168
時間:
2017-8-11 19:43
一個定時器就可以
作者:
hange_v
時間:
2017-8-12 22:02
看我以前傳的51自學筆記,里面有1602例程,我自己寫的。
http://www.raoushi.com/bbs/dpj-85237-1.html
作者:
大叔很可愛
時間:
2017-8-12 22:29
用一個定時器,每0.1毫秒加一,對三個小燈設定一個值,用if函數控制,低于相應的值就高電平,超過就低電平。
作者:
hawklm
時間:
2017-8-12 22:59
開一個定時器,每10毫秒三個小燈的計數值累加一次,然后判斷計數值,到了閾值就變化一次(亮滅)
作者:
微笑達
時間:
2017-8-12 23:38
論壇大神多,幫你頂帖等待。
作者:
dzbj
時間:
2017-8-12 23:48
1. 樓上前輩都回答了 同上
2. 網上有很多手把手的教材 你下一個跟著做就行了 我就是這么學的
3. 簡單的可以從vcc分別串聯3個電阻到3個led 每個10K 這樣一個led的電流也就幾毫安 三個一起也不會燒片子 復雜一點的就要加驅動 用三極管 mosfet或者2303都可以
作者:
驅蚊燈
時間:
2017-8-13 05:53
//液晶1602(帶字庫)顯示測試程序// #include<reg51.h> #define uint unsigned int #define uchar unsigned char //宏定義 uchar code table[]=" LU LIE QI "; uchar code table1[]="WWW.LAOWANG.COM"; sbit LCD_RS=P2^6; //位定義 sbit LCD_RW=P2^5; sbit LCD_EN=P2^7; uchar num; //定義全局變量 //延時程序===1ms// void delay_1ms(uint mas) { uint i,j; for(i=0;i<mas;i++) for(j=0;j<110;j++); } void write_com(uchar com) // 寫命令 { LCD_RS=0; LCD_RW=0; P0=com; delay_1ms(5); LCD_EN=1; delay_1ms(5); LCD_EN=0; } void write_data(uchar dadt) //寫數據 { LCD_RS=1; P0=dadt; delay_1ms(5); LCD_EN=1; delay_1ms(5); LCD_EN=0; } void init() //初始化函數 { LCD_EN=0; write_com(0x38); //顯示模式設置16X2,5X7點陣,8位數據口 write_com(0x0f); //開顯示、開關標、關標閃爍 write_com(0x06); //關標加一 write_com(0x01); //清屏 write_com(0x80+0x10); //數據指針位置 } //=====主函數======// void main() { init(); for(num=0;num<10;num++) { write_data(table[num]); delay_1ms(20); } write_com(0x80+0x50); for(num=0;num<15;num++) { write_data(table1[num]); delay_1ms(20); } for(num=0;num<16;num++) { write_com(0x18); delay_1ms(500); } while(1); }
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1