国产三级在线看完整版-内射白嫩大屁股在线播放91-欧美精品国产精品综合-国产精品视频网站一区-一二三四在线观看视频韩国-国产不卡国产不卡国产精品不卡-日本岛国一区二区三区四区-成年人免费在线看片网站-熟女少妇一区二区三区四区

儀器網(wǎng)(yiqi.com)歡迎您!

| 注冊2 登錄
網(wǎng)站首頁-資訊-話題-產(chǎn)品-評測-品牌庫-供應(yīng)商-展會-招標(biāo)-采購-知識-技術(shù)-社區(qū)-資料-方案-產(chǎn)品庫-視頻

問答社區(qū)

頻率計程序 數(shù)碼管閃爍嚴(yán)重 請教怎么修改 謝謝

_Adashine 2010-09-15 17:21:40 395  瀏覽
  • //程序說明:這是6位數(shù)顯頻率計,外部方波接到單片機(jī)的P3.4(T0),通過數(shù)碼管顯示所測的頻率 #include #include #define uchar unsigned char #define unit unsigned int #define ulong unsigned long //uchar code dispbit[]={... //程序說明:這是6位數(shù)顯頻率計,外部方波接到單片機(jī)的P3.4(T0),通過數(shù)碼管顯示所測的頻率 #include #include #define uchar unsigned char #define unit unsigned int #define ulong unsigned long //uchar code dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 定義位選 uchar code dispbit[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; // 定義位選 uchar code dispcode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x89,0xbf};//定義段碼 uchar dispbuf[8]={0,0,0,0,0,0,11,10}; //顯示緩沖 uchar temp[8]; uchar dispcount; uchar T0count;//T0計數(shù) uchar timecount;//時間計數(shù) bit flag; ulong x; void main(void) { TMOD=0x15; TH0=0; TL0=0; TH1=(65536-4000)/256; TL1=(65536-4000)%256; TR1=1; TR0=1; ET0=1; ET1=1; EA=1; while(1) { uchar i; if(flag==1) { flag=0; x=T0count*65536+TH0*256+TL0; for(i=0;i<8;i++) { temp[i]=0; } i=0; while(x/10) { temp[i]=x%10; x=x/10; i++; } temp[i]=x; for(i=0;i<6;i++) { dispbuf[i]=temp[i]; } timecount=0; T0count=0; TH0=0; TL0=0; TR0=1; } } } void t0(void) interrupt 1 using 1//T0工作在計數(shù)狀態(tài)下,T0的Z大計數(shù)頻率為250KHz { T0count++; } void t1(void) interrupt 3 using 2 { TH1=(65536-4000)/256; TL1=(65536-4000)%256; timecount++; if(timecount==250) { TR0=0; timecount=0; flag=1; } P0=dispcode[dispbuf[dispcount]]; P2=dispbit[dispcount]; dispcount++; if(dispcount==8) { dispcount=0; } } 展開

參與評論

全部評論(2條)

  • wang471849718 2010-09-16 00:00:00
    適當(dāng)加個電容可以不閃

    贊(2)

    回復(fù)(0)

    評論

  • shunhua804 2010-09-24 00:00:00
    多掃描幾次,就不閃了,可以去我的博客上看看,估計會對你有用。

    贊(11)

    回復(fù)(0)

    評論

熱門問答

頻率計程序 數(shù)碼管閃爍嚴(yán)重 請教怎么修改 謝謝
//程序說明:這是6位數(shù)顯頻率計,外部方波接到單片機(jī)的P3.4(T0),通過數(shù)碼管顯示所測的頻率 #include #include #define uchar unsigned char #define unit unsigned int #define ulong unsigned long //uchar code dispbit[]={... //程序說明:這是6位數(shù)顯頻率計,外部方波接到單片機(jī)的P3.4(T0),通過數(shù)碼管顯示所測的頻率 #include #include #define uchar unsigned char #define unit unsigned int #define ulong unsigned long //uchar code dispbit[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 定義位選 uchar code dispbit[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe}; // 定義位選 uchar code dispcode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x89,0xbf};//定義段碼 uchar dispbuf[8]={0,0,0,0,0,0,11,10}; //顯示緩沖 uchar temp[8]; uchar dispcount; uchar T0count;//T0計數(shù) uchar timecount;//時間計數(shù) bit flag; ulong x; void main(void) { TMOD=0x15; TH0=0; TL0=0; TH1=(65536-4000)/256; TL1=(65536-4000)%256; TR1=1; TR0=1; ET0=1; ET1=1; EA=1; while(1) { uchar i; if(flag==1) { flag=0; x=T0count*65536+TH0*256+TL0; for(i=0;i<8;i++) { temp[i]=0; } i=0; while(x/10) { temp[i]=x%10; x=x/10; i++; } temp[i]=x; for(i=0;i<6;i++) { dispbuf[i]=temp[i]; } timecount=0; T0count=0; TH0=0; TL0=0; TR0=1; } } } void t0(void) interrupt 1 using 1//T0工作在計數(shù)狀態(tài)下,T0的Z大計數(shù)頻率為250KHz { T0count++; } void t1(void) interrupt 3 using 2 { TH1=(65536-4000)/256; TL1=(65536-4000)%256; timecount++; if(timecount==250) { TR0=0; timecount=0; flag=1; } P0=dispcode[dispbuf[dispcount]]; P2=dispbit[dispcount]; dispcount++; if(dispcount==8) { dispcount=0; } } 展開
2010-09-15 17:21:40 395 2
單片機(jī)做頻率計數(shù)碼管的顯示C語言程序
#include float time=0; float freq=0; unsigned char dsh=0; unsigned char dsz=0; unsigned char dsl=0; main() {EA=1; ET0=1; ET1=1; TMOD=0x061; TH0=-1000/256; TL0=-1000%256; TH1=0xfb; TL1=0xfb; TR0=1; TR1=1; while...
2010-06-19 23:43:52 533 2
數(shù)碼管顯示的頻率計拜托了各位 謝謝
數(shù)碼管顯示的頻率計,不是畢業(yè)論文,是簡單的課程設(shè)計,從哪可以找到簡單點的報告交給老師,急,麻煩解答下
2014-06-21 20:19:05 409 1
FPGA,頻率計,數(shù)碼管顯示問題!
做頻率計,到數(shù)碼管顯示,燒入板中,顯示亂碼,不知道什么問題,也不知道掃描時鐘怎么設(shè)置,下面程序的CLK,指的是什么??求大神解答! LIBRARY IEEE; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity display is port(in7,in... 做頻率計,到數(shù)碼管顯示,燒入板中,顯示亂碼,不知道什么問題,也不知道掃描時鐘怎么設(shè)置,下面程序的CLK,指的是什么??求大神解答! LIBRARY IEEE; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity display is port(in7,in6,in5,in4,in3,in2,in1,in0:in std_logic_vector(3 downto 0); lout7:out std_logic_vector(7 downto 0); SEL:OUT STD_LOGIC_VECTOR(2 DOWNTO 0); clk:in std_logic ); end display; architecture phtao of display is signal s:std_logic_vector(2 downto 0); signal lout4:std_logic_vector(3 downto 0); begin process (clk) begin if (clk'event and clk='1')then if (s="111") then s<="000"; else s<=s+1; end if; end if; sel<=s; end process; process (s) begin case s is when "000"=>lout4<=in6; when "001"=>lout4<=in5; when "010"=>lout4<=in4; when "011"=>lout4<="0000"; when "100"=>lout4<=in3; when "101"=>lout4<=in2; when "110"=>lout4<=in1; when "111"=>lout4<="0000"; when others=>lout4<="XXXX"; end case; case lout4 is when "0000"=>lout7<="00111111"; when "0001"=>lout7<="00000110"; when "0010"=>lout7<="01011011"; when "0011"=>lout7<="01001111"; when "0100"=>lout7<="01100110"; when "0101"=>lout7<="01101101"; when "0110"=>lout7<="01111101"; when "0111"=>lout7<="00000111"; when "1000"=>lout7<="01111111"; when "1001"=>lout7<="01100111"; when "1010"=>lout7<="00111111"; when "1111"=>lout7<="01000000"; when others=>lout7<="XXXXXXXX"; end case; end process; end phtao; 展開
2015-07-04 01:06:37 692 2
CNC數(shù)控機(jī)床程序怎么修改?
 
2018-01-02 00:21:21 1465 1
單片機(jī)頻率計的這段程序怎么理解
 
2017-12-05 00:32:59 516 3
stc12c5a60s2單片機(jī)頻率計程序
2017-07-07 00:38:42 414 1
這個程序該如何修改??
#include void main() { long int i; int n; double w; scanf("%ld",&i); n=i/1000000; if(n>10) n=10; switch(n) { case 0:w=i*0.1;break; case 1:w=100000*0.1+(i-100000)*0.075;break; case 2: case 3:w=100000*0.1+100000*0.075+... #include void main() { long int i; int n; double w; scanf("%ld",&i); n=i/1000000; if(n>10) n=10; switch(n) { case 0:w=i*0.1;break; case 1:w=100000*0.1+(i-100000)*0.075;break; case 2: case 3:w=100000*0.1+100000*0.075+(i-200000)*0.05;break; case 4: case 5:w=100000*0.1+100000*0.075+200000*0.05+(i-400000)*0.03;break; case 6: case 7: case 8: case 9:w=100000*0.1+100000*0.075+200000*0.05+200000*0.03+(i-600000)*0.015;break; case 10:w=100000*0.1+100000*0.075+200000*0.05+200000*0.03+400000*0.015+(i-1000000)*0.01;break; } printf("獎金是:%lf\n",w); } 展開
2013-03-19 12:53:27 227 1
51單片機(jī)頻率計的中斷程序怎么設(shè)計
有一個信號由200hz的NRZ碼控制輸出兩個頻率不同的方波(1600,800)?,F(xiàn)在要還原,如果檢測到1600則p3.5輸出高電平,800則輸出低電平。我的設(shè)想是定時一個5ms的中斷,對輸入的方波電平0→1進(jìn)行計數(shù)。計數(shù)值大于(8+4)/2=6的話輸出1,小于輸出0。請問這樣可以... 有一個信號由200hz的NRZ碼控制輸出兩個頻率不同的方波(1600,800)。現(xiàn)在要還原,如果檢測到1600則p3.5輸出高電平,800則輸出低電平。我的設(shè)想是定時一個5ms的中斷,對輸入的方波電平0→1進(jìn)行計數(shù)。計數(shù)值大于(8+4)/2=6的話輸出1,小于輸出0。請問這樣可以嗎?對于定時器計時器還有中斷的使用不大明白,可否簡略寫下程序。謝謝 展開
2015-05-26 01:56:14 539 1
單片機(jī)簡易頻率計,怎么編程序測正弦信號的?
測方波信號的我知道,就是用計數(shù)器來計數(shù),但正弦信號不能這樣子的吧。
2011-06-18 10:21:18 488 3
經(jīng)過調(diào)試后的三菱plc,怎么再修改程序
 
2016-11-04 05:30:12 522 2
利用芯片74138控制的數(shù)碼管的C程序
voidReadKey(void);//掃描鍵盤獲取鍵值voidmain(void)//入口函數(shù){while(1){ReadKey();//調(diào)用鍵盤掃描if(l_key!=0xff)//如果有鍵按下,將其輸出P2口LED燈顯示,{switch(l_key){case0x7... void ReadKey(void); //掃描鍵盤 獲取鍵值

void main(void) //入口函數(shù)
{
while(1){
ReadKey(); //調(diào)用鍵盤掃描
if(l_key!=0xff) //如果有鍵按下,將其輸出P2口LED燈顯示,
{ switch(l_key)
{ case 0x7e:
num=1;
break;
case 0xbe:
num=2;
break;
case 0xde:
num=3;
break;
case 0xee:
num=4;
break;
} P2=table[num] ; } //這里取反是因為LED燈采用共陰接法 } } void ReadKey(void) //讀鍵盤值 { P0=0xfe; //將diyi列拉低,掃描是否有按鍵按下,diyi列按鍵包括:0,4,8,C l_key=P0; //讀取鍵值 if(l_key!=0xfe) //如果l_key不等于0xfe,說明有鍵按下,就返回,否則繼續(xù)掃描下一列 return; P0=0xfd; //將第二列拉低,掃描是否有按鍵按下,第二列按鍵包括:1,5,9,D l_key=P0; //讀取鍵值 if(l_key!=0xfd) //如果l_key不等于0xfd,說明有鍵按下,就返回,否則繼續(xù)掃描下一列 return; P0=0xfb; //將第三列拉低,掃描是否有按鍵按下,第三列按鍵包括:2,6,A,F(xiàn) l_key=P0; //讀取鍵值 if(l_key!=0xfb) //如果l_key不等于0xfb,說明有鍵按下,就返回,否則繼續(xù)掃描下一列 return; P0=0xf7; //將第四列拉低,掃描是否有按鍵按下,第四列按鍵包括:3,7,B,F(xiàn) l_key=P0; //讀取鍵值 if(l_key!=0xf7) //如果l_key不等于0xf7,說明有鍵按下,就返回,否則掃描完畢將l_key=0xff return; l_key=0xff; } void delay() { unsigned int x,y; for(x=100;x>0;x--) for(y=200;y>0;y--); } 這個程序是用來掃描diyi列鍵盤,diyi個和第二個鍵按下,數(shù)碼管會顯示1和2,但是第三個鍵和第四個鍵按下,就不顯示不出來三和四,這是為什么呢? 展開
2008-09-15 15:10:29 493 1
跪求單片機(jī)at89c52頻率計c語言程序
還有跪求那個方波的名字叫神馬~~~
2015-04-23 09:42:30 372 1
基于單片機(jī)AT89C52頻率計,求程序,求助
 
2017-06-22 09:26:53 426 1
跪求簡易頻率計的電路圖和程序
 
2018-12-07 06:48:06 377 0
求一個簡易單片機(jī)頻率計設(shè)計程序
頻率測量精度為1HZ 誤差小于10HZ通過LCD1602顯示出來
2010-07-11 07:06:44 566 2
低頻頻率計的原理圖和程序[匯編語言]
設(shè)計要求:1、 工作電壓:5V 2、 數(shù)字顯示位數(shù):5位數(shù)字顯示 3、 頻率范圍:1Hz~99999Hz 5、 分辨率:1Hz 6、 被測信號:周期性信號 Z好有原理圖和程序[匯編語言]的一起發(fā)來,畢業(yè)設(shè)計要用,很急啊?。Q441769013 郵箱:wengkaiwc@163.com
2018-11-21 20:38:30 358 0
數(shù)字式頻率計 Multisim仿真圖修改 滿意給50分
 
2012-07-04 00:55:49 381 2
面包板中數(shù)碼管怎么連接
 
2011-12-05 04:43:43 1264 2

4月突出貢獻(xiàn)榜

推薦主頁

最新話題