![]() |
發布時間: 2023-5-31 09:25
正文摘要:誰能點亮這些數碼管和燈啊搞了2天了,芯片是STC12C5204AD。附件是原理圖 目前只能點亮這個幾個單片機代碼如下: #include<reg51.h> #include "intrins.h" #define uchar unsigned char #define uint un ... |
這種問題呵呵。 1、有成品板,通常已有程序; 2、沒有,要么是考,要么你懂的; 3、雖不復雜但別人未必有同樣的成品板,仿真也要重搭; 4、程序也不復雜,但調試起來你懂的,何況可能要重寫; 5、大家只好給思路,都是基本的從簡單到復雜,不明白先畫導圖; 6、九樓的建議很好而且簡單省錢易行,實用應該采用 考除外。 |
LLSSZS 發表于 2023-6-1 11:18 不是差不多點亮數碼管和燈就算基本正常,看你的電路圖和代碼都有明顯的瑕疵。先得把數碼管和燈調試正常,再添加串口調試。 |
wulin 發表于 2023-6-1 09:43 數碼管和燈我都差不多點亮了,現在想加一個串口就是電腦發送然后數碼管顯示,可是就是實現不了,求指教 |
wulin 發表于 2023-5-31 18:25 數碼管和燈我都差不多點亮了,現在想加一個串口就是電腦發送然后數碼管顯示,可是就是實現不了,求指教 |
LLSSZS 發表于 2023-6-1 08:02 從你的原理圖看這個電路除了驅動16位數碼管+14個LED外也沒有什么其它功能,換一個STC15W104或STC8G1K08的8腳芯片+TM1640數碼管專用芯片,既簡單可靠又省銀子不好嗎?多4個引腳還可以擴展其它功能。推薦電路圖: ![]() |
雖然原理圖看著很雜亂,但是硬件設計的人員已經都分配好了,跟普通數碼管顯示方式是一樣的,這個硬件設計的人應該也一樣會寫代碼 |
wulin 發表于 2023-5-31 18:25 是ic,LS145。有原理圖的在附件 |
沒仔細看,原來你是有原理圖的, |
#include<reg51.h> #include "intrins.h" #define uchar unsigned char #define uint unsigned int uchar code seg[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; uchar code se[]={0xe0,0x0e,0xf9,0xa4,0xb0,0x92,0xf8,0x90}; void delayms(uint j); void main(void) { uint num,s,g,n; num=0; s=0; g=0; g=0; while(1) { num++; //試數,假若num = 3 if(num==10000) //不成立不執行 { num=0; } g=num%10; //試數,假若num = 3 g =3 s=num/10%10; //試數,假若num = 3 s =0 n=num/100%10; //試數,假若num = 3 n =0 P1=0xcf; //11001111 P2=0x90; //10010000 P3=se[g]; //試數,假若num = 3 g =3 P3=se[3]; P3 = 0xa4 ;0xa4 二進制 10100100 delayms(1000); } } void delayms(uint k) { uchar i; for(;k>0;k--); { i=250; while(--i); i=249; while(--i); } } /* 你沒用動態刷新用了延時,delayms(1000)后再自加,再刷新顯示。 按照你的程序,p3只能顯示一位數碼管,或一列(行)LED 不知道你的硬件連接情況,按照這個方法你自己試一下。 */ |
STC12C5204AD點亮16位數碼管+14個LED本身沒有難度,但這個代碼肯定不行。U16~U19是啥玩意?竟然用2片MCU,還用了這么多三極管,倒不如用專用芯片TM1640。 |
kxcuser 發表于 2023-5-31 17:04 現在就差燈沒有點亮了,有原理圖,那四個IC是LS145 大神教我點燈 |
看起來有點像醫療控制的板 |