找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4252|回復(fù): 13
打印 上一主題 下一主題
收起左側(cè)

求各位大佬幫幫小弟啦 3個單片機(jī)問題

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:226695 發(fā)表于 2017-8-11 09:27 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
C求各位大佬幫幫小弟啦~


現(xiàn)在我有三個問題:
1.如何用AT89c52控制三個led小燈用不同頻率閃爍?我用定時(shí)器只能做到兩個,第三個定時(shí)器我不會開

2.如何用AT89C52做一個按鍵控制LED1602A顯示的程序,這個我是純小白,學(xué)的時(shí)間太短了。。
3.程序我燒到單片機(jī)里后,如何和三個led小燈連接到一起才不會吧單片機(jī)燒掉。。。




感謝各位大佬!!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:123289 發(fā)表于 2017-8-11 10:16 | 只看該作者
太浪費(fèi)資源了,一個定時(shí)器就可以搞定了
回復(fù)

使用道具 舉報(bào)

板凳
ID:226695 發(fā)表于 2017-8-11 14:13 | 只看該作者
yzwzfyz 發(fā)表于 2017-8-11 10:16
太浪費(fèi)資源了,一個定時(shí)器就可以搞定了

大佬可不可以詳細(xì)地說一下呢~
我是新手,搞不太懂
回復(fù)

使用道具 舉報(bào)

地板
ID:227013 發(fā)表于 2017-8-11 17:15 | 只看該作者
你可以調(diào)PWM
回復(fù)

使用道具 舉報(bào)

5#
ID:190832 發(fā)表于 2017-8-11 17:56 | 只看該作者
只用一個定時(shí)器計(jì)數(shù),再來三個變量每次計(jì)數(shù)器滿了就加一,三個變量達(dá)到設(shè)定數(shù)值(三個設(shè)定數(shù)值由你的頻率決定)就切換燈的狀態(tài)。第二個問題寫好1602的驅(qū)動,根據(jù)按鍵顯示值。第三個用三極管,單片機(jī)IO口接基極。
回復(fù)

使用道具 舉報(bào)

6#
ID:227034 發(fā)表于 2017-8-11 18:01 | 只看該作者
 太浪費(fèi)資源了,一個定時(shí)器就可以搞定了
回復(fù)

使用道具 舉報(bào)

7#
ID:227034 發(fā)表于 2017-8-11 18:01 | 只看該作者
第三個用三極管,單片機(jī)IO口接基極
回復(fù)

使用道具 舉報(bào)

8#
ID:111634 發(fā)表于 2017-8-11 19:43 | 只看該作者
一個定時(shí)器就可以
回復(fù)

使用道具 舉報(bào)

9#
ID:190832 發(fā)表于 2017-8-12 22:02 | 只看該作者
看我以前傳的51自學(xué)筆記,里面有1602例程,我自己寫的。http://www.torrancerestoration.com/bbs/dpj-85237-1.html
回復(fù)

使用道具 舉報(bào)

10#
ID:205934 發(fā)表于 2017-8-12 22:29 | 只看該作者
用一個定時(shí)器,每0.1毫秒加一,對三個小燈設(shè)定一個值,用if函數(shù)控制,低于相應(yīng)的值就高電平,超過就低電平。
回復(fù)

使用道具 舉報(bào)

11#
ID:78850 發(fā)表于 2017-8-12 22:59 | 只看該作者
開一個定時(shí)器,每10毫秒三個小燈的計(jì)數(shù)值累加一次,然后判斷計(jì)數(shù)值,到了閾值就變化一次(亮滅)
回復(fù)

使用道具 舉報(bào)

12#
ID:217089 發(fā)表于 2017-8-12 23:38 | 只看該作者
論壇大神多,幫你頂帖等待。
回復(fù)

使用道具 舉報(bào)

13#
ID:47286 發(fā)表于 2017-8-12 23:48 | 只看該作者
1. 樓上前輩都回答了 同上
2. 網(wǎng)上有很多手把手的教材 你下一個跟著做就行了 我就是這么學(xué)的
3. 簡單的可以從vcc分別串聯(lián)3個電阻到3個led 每個10K 這樣一個led的電流也就幾毫安 三個一起也不會燒片子 復(fù)雜一點(diǎn)的就要加驅(qū)動 用三極管 mosfet或者2303都可以
回復(fù)

使用道具 舉報(bào)

14#
ID:218870 發(fā)表于 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;           //定義全局變量 //延時(shí)程序===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) //寫數(shù)據(jù) {         LCD_RS=1;         P0=dadt;         delay_1ms(5);         LCD_EN=1;         delay_1ms(5);         LCD_EN=0;  } void init()  //初始化函數(shù) {         LCD_EN=0;         write_com(0x38);        //顯示模式設(shè)置16X2,5X7點(diǎn)陣,8位數(shù)據(jù)口         write_com(0x0f);        //開顯示、開關(guān)標(biāo)、關(guān)標(biāo)閃爍         write_com(0x06);        //關(guān)標(biāo)加一         write_com(0x01);        //清屏         write_com(0x80+0x10);        //數(shù)據(jù)指針位置         } //=====主函數(shù)======// 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); }
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表