打開串口調(diào)試程序,將波特率設(shè)置為9600,無奇偶校驗(yàn) 晶振11.0592MHz,發(fā)送和接收使用的格式相同,如都使用 字符型格式,在發(fā)送框輸入 hello,I Love MCU ,在接 收框中同樣可以看到相同字符,說明設(shè)置和通信正確
標(biāo)簽: 串口調(diào)試 程序
上傳時(shí)間: 2014-01-21
上傳用戶:kikye
總結(jié)的一些設(shè)計(jì)中應(yīng)注意的問題,和單片機(jī)硬件設(shè)計(jì)原則,希望大家能看完! 在元器件的布局方面,應(yīng)該把相互有關(guān)的元件盡量放得靠近一些,例如,時(shí)鐘發(fā)生 器、晶振、CPU 的時(shí)鐘輸入端都易產(chǎn)生噪聲。
標(biāo)簽: 電路板設(shè)計(jì)
上傳時(shí)間: 2015-03-11
上傳用戶:曉菲菲的小魚兒
多功能電子時(shí)鐘的功能的電路具有實(shí)現(xiàn)顯示時(shí)、分、秒,以(24小時(shí))計(jì)時(shí)方式的功能;具有快速校準(zhǔn)時(shí)、分、秒的其本功能;秒表/時(shí)鐘功能的轉(zhuǎn)換;具有整點(diǎn)報(bào)時(shí)的功能;還可以實(shí)現(xiàn)對時(shí)間的調(diào)整。由單片機(jī)、復(fù)位、時(shí)鐘電路、晶振、LED數(shù)碼管、按鍵、蜂鳴器組成。
標(biāo)簽: 單片
上傳時(shí)間: 2015-07-06
上傳用戶:ghycxz
使用C51解碼,紅外編碼NEC格式。晶振11.0592
標(biāo)簽: 使用C51解碼
上傳時(shí)間: 2016-02-02
上傳用戶:pourout
/**************************************************************** 外部晶振8M PA0~3:四位數(shù)碼管的位選 PB0~7:數(shù)碼管的8位段選 外部中斷0用于計(jì)數(shù) 定時(shí)器0溢出中斷的定時(shí)為1ms 說明 :檢測到水流較小時(shí),繼電器延時(shí)1秒關(guān)閉 ******************************************************************/ #include<iom16v.h> #include<macros.h> #define uchar unsigned char #define uint unsigned int char led_7[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}; //數(shù)碼管段選 char position[4]={0xfe,0xfd,0xfb,0xf7};//數(shù)碼管位選 uint sumnum=0; //用于記錄1000ms內(nèi)進(jìn)入中斷的次數(shù) uint time=0; //記錄進(jìn)入比較定時(shí)器0的次數(shù) uint num=0; //記錄1ms內(nèi)進(jìn)入中斷的次數(shù) uint count=0; //進(jìn)入外部中斷0的次數(shù) uchar flag; uint sumnum1; //記錄100ms內(nèi)的數(shù)目 /***************************函數(shù)聲明***************************/ void delay(); void display(uint m ); void init(); void init_0(); void init_2(); void _delay_us(uint l) { unsigned int i; for(i=0;i<l;i++) { asm("nop"); } } /**************************主函數(shù)***********************************/ void main() { init(); init_0(); init_2(); while(sumnum<5) { PORTD=0XBF; segdisplay(sumnum1); } while(1) { segdisplay(sumnum1); } } /*************************掃描數(shù)碼管時(shí)的延時(shí)函數(shù)*********************/ void delay() { uchar i,j; for(i=6;i>0;i--) for(j=225;j>0;j--); } /************************數(shù)碼管顯示函數(shù)*****************************/ void segdisplay( int temp) { int seg[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; int temp1,temp2,temp3,temp4; temp1=temp/1000; temp2=(temp/100)%10; temp3=(temp/10)%10; temp4=temp%10; DDRB=0xff; DDRA|=0x0f; PORTA=~BIT(3); PORTB=seg[temp1]; _delay_us(100); PORTA=~BIT(2); PORTB=seg[temp2]; _delay_us(100); PORTA=~BIT(1); PORTB=seg[temp3]; _delay_us(100); PORTA=~BIT(0); PORTB=seg[temp4]; _delay_us(100); } /***********************管腳初始化函數(shù)*********************/ void init() { DDRD|=0X40; //PD4 設(shè)置為輸出 PORTD=0XBF; DDRA=0XFF; DDRB=0XFF; PORTA=0XFF; PORTB=0XFF; } /***********************外部中斷0初始化*********************/ void init_0() { MCUCR=0X02; //INT0為下降沿觸發(fā) GICR=0X40; //使能INT0中斷 SREG=0X80; //使能總中斷 } /**********************定時(shí)器2初始化***********************/ void init_2() { TCCR0=0x03; // 內(nèi)部時(shí)鐘,64 分頻(8M/64=125KHz) TCNT0=0x83; //裝初值 TIMSK=0x01; // 允許 T/C0溢出中斷中斷 } /***********************外部中斷0子函數(shù)********************/ #pragma interrupt_handler int0_isr:2 void int0_isr(void) { count++; } /*********************定時(shí)計(jì)數(shù)器0溢出中斷子函數(shù)*****************/ #pragma interrupt_handler int0_over:10 void int0_over(void) { TCNT0=0x83; //重裝初值 if((time%100) == 0) sumnum1 = num; if(time == 1000) { sumnum=num; if(sumnum<10) { if((flag==1)&&(sumnum<10)) { PORTD=0XFF; flag=0; } flag++; } else PORTD=0XBF; num=0; time=0; } num+=count; count=0; ++time; }
標(biāo)簽: C語言
上傳時(shí)間: 2016-03-09
上傳用戶:彥 yan
C程序中可使用不同類型的變量來進(jìn)行延時(shí)設(shè)計(jì)。經(jīng)實(shí)驗(yàn)測試,使用unsigned char類型具有比unsigned int更優(yōu)化的代碼,在使用時(shí)應(yīng)該使用unsigned char作為延時(shí)變量。 以某晶振為12MHz的單片機(jī)為例,晶振為12MHz即一個(gè)機(jī)器周期為1us。
標(biāo)簽: for 單片機(jī) C語言 延時(shí)計(jì)算
上傳時(shí)間: 2016-04-28
上傳用戶:xcx7694
hcs301滾動(dòng)碼接收程序,是STC單片機(jī)解碼接收的,晶振11.0592
標(biāo)簽: hcs 301 滾動(dòng)碼 接收程序
上傳時(shí)間: 2016-07-15
上傳用戶:liangyan320
理想的放大器 目前,廠商在線性IC研發(fā)上都有重大的突破。使IC型運(yùn)算放大器的特性和理想相當(dāng)接近。尤其在低頻操作下,OP Amp電路的工作情形實(shí)在太像一個(gè)理想放大器,幾乎與理論的推測完全相符。→理想的放大器該具備什麼特性?
標(biāo)簽: 算放大器原理
上傳時(shí)間: 2016-07-16
上傳用戶:WALTER
采用純硬件打造的數(shù)字頻率計(jì),不包含任何單片機(jī),晶振,計(jì)數(shù)器,譯碼器,數(shù)碼管
上傳時(shí)間: 2017-12-13
上傳用戶:fengshu
是否要先打開ALLEGRO? 不需要(當(dāng)然你的機(jī)器須有CADENCE系統(tǒng))。生成完封裝后在你的輸出目錄下就會(huì)有幾千個(gè)器件(全部生成的話),默認(rèn)輸出目錄為c:\MySym\. Level里面的Minimum, Nominal, Maximum 是什么意思? 對應(yīng)ipc7351A的ABC封裝嗎? 是的 能否將MOST, NOMINAL, LEAST三種有差別的封裝在命名上也體現(xiàn)出差別? NOMINAL 的名稱最后沒有后綴,MOST的后綴自動(dòng)添加“M”,LEAST的后綴自動(dòng)添加“L”,你看看生成的庫名稱就知道了。(直插件以及特別的器件,如BGA等是沒有MOST和LEAST級別的,對這類器件只有NOMINAL) IC焊盤用長方形好像比用橢圓形的好,能不能生成長方形的? 嗯。。。。基本上應(yīng)該是非直角的焊盤比矩形的焊盤好,我記不得是AMD還是NS還是AD公司專門有篇文檔討論了這個(gè)問題,如果沒有記錯(cuò)的話至少有以下好處:信號質(zhì)量好、更省空間(特別是緊密設(shè)計(jì)中)、更省錫量。我過去有一篇帖子有一個(gè)倒角焊盤的SKILL,用于晶振電路和高速器件(如DDR的濾波電容),原因是對寬度比較大的矩形用橢圓焊盤也不合適,這種情況下用自定義的矩形倒角焊盤就比較好了---你可以從網(wǎng)上另外一個(gè)DDR設(shè)計(jì)的例子中看到。 當(dāng)然,我已經(jīng)在程序中添加了一選擇項(xiàng),對一些矩形焊盤可以選擇倒角方式. 剛才試了一下,感覺器件的命名的規(guī)范性不是太好,另好像不能生成器件的DEVICE文件,我沒RUN完。。。 這個(gè)程序的命名方法基本參照IPC-7351,每個(gè)人都有自己的命名嗜好,仍是不好統(tǒng)一的;我是比較懶的啦,所以就盡量靠近IPC-7351了。 至于DEVICE,的選項(xiàng)已經(jīng)添加 (這就是批量程序的好處,代碼中加一行,重新生產(chǎn)的上千上萬個(gè)封裝就都有新東西了)。 你的庫都是"-"的,請問用過ALLEGRO的兄弟,你們的FOOTPRINT認(rèn)"-"嗎?反正我的ALLEGRO只認(rèn)"_"(下劃線) 用“-”應(yīng)該沒有問題的,焊盤的命名我用的是"_"(這個(gè)一直沒改動(dòng)過)。 部分絲印畫在焊盤上了。 絲印的問題我早已知道,只是盡量避免開(我有個(gè)可配置的SilkGap變量),不過工作量比較大,有些已經(jīng)改過,有些還沒有;另外我沒有特別費(fèi)功夫在絲印上的另一個(gè)原因是,我通常最后用AUTO-SILK的來合并相關(guān)的層,這樣既方便快捷也統(tǒng)一各個(gè)器件的絲印間距,用AUTO-SILK的話絲印線會(huì)自動(dòng)避開SOLDER-MASK的。 點(diǎn)擊allegro后命令行出現(xiàn)E- Can't change to directory: Files\FPM,什么原因? 我想你一定是將FPM安裝在一個(gè)含空格的目錄里面了,比如C:\Program Files\等等之類,在自定義安裝目錄的時(shí)候該目錄名不能含有空格,且存放生成的封裝的目錄名也不能含有空格。你如果用默認(rèn)安裝的話應(yīng)該是不會(huì)有問題的, 默認(rèn)FPM安裝在C:\FPM,默認(rèn)存放封裝的目錄為C:\MYSYM 0.04版用spb15.51生成時(shí).allegro會(huì)死機(jī).以前版本的Allegro封裝生成器用spb15.51生成時(shí)沒有死機(jī)現(xiàn)象 我在生成MELF類封裝的時(shí)候有過一次死機(jī)現(xiàn)象,估計(jì)是文件操作錯(cuò)誤導(dǎo)致ALLEGRO死機(jī),原因是我沒有找到在skill里面直接生成SHAPE焊盤的方法(FLASH和常規(guī)焊盤沒問題), 查了下資料也沒有找到解決方法,所以只得在外部調(diào)用SCRIPT來將就一下了。(下次我再查查看),用SCRIPT的話文件訪問比較頻繁(幸好目前MELF類的器件不多). 解決辦法: 1、對MELF類器件單獨(dú)選擇生成,其它的應(yīng)該可以一次生成。 2、試試最新的版本(當(dāng)前0.05) 請說明運(yùn)行在哪類器件的時(shí)候ALLEGRO出錯(cuò),如果不是在MELF附近的話,請告知,謝謝。 用FPM0.04生成的封裝好像文件都比較大,比如CAPC、RES等器件,都是300多K,而自己建的或采用PCB Libraries Eval生成的封裝一般才幾十K到100K左右,不知封裝是不是包含了更多的信息? 我的每個(gè)封裝文件包含了幾個(gè)文字層(REF,VAL,TOL,DEV,PARTNUMBER等),SILK和ASSEM也是分開的,BOND層和高度信息,還有些定位線(在DISP層),可能這些越來越豐富的信息加大了生成文件的尺寸.你如果想看有什么內(nèi)容的話,打開所有層就看見了(或REPORT) 非常感謝 LiWenHui 發(fā)現(xiàn)的BUG, 已經(jīng)找到原因,是下面這行: axlDBChangeDesignExtents( '((-1000 -1000) (1000 1000))) 有尺寸空間開得太大,后又沒有壓縮的原因,現(xiàn)在生成的封裝也只有幾十K了,0.05版已經(jīng)修復(fù)這個(gè)BUG了。 Allegro封裝生成器0.04生成do-27封裝不正確,生成封裝的焊盤的位號為a,c.應(yīng)該是A,B或者1,2才對. 呵呵,DIODE通常管腳名為AC(A = anode, C = cathode) 也有用AK 或 12的, 極少見AB。 除了DIODE和極個(gè)別插件以及BGA外,焊盤名字以數(shù)字為主, 下次我給DIODE一個(gè)選擇項(xiàng),可以選擇AC 或 12 或 AK, 至于TRANSISTER我就不去區(qū)分BCE/CBE/ECB/EBC/GDS/GSD/DSG/DGS/SGD/SDG等了,這樣會(huì)沒完沒了的,我將對TRANSISTER強(qiáng)制統(tǒng)一以數(shù)字編號了,如果用家非要改變,只得在生成庫后手工修改。
標(biāo)簽: Footprint Maker 0.08 FPM skill
上傳時(shí)間: 2018-01-10
上傳用戶:digitzing
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1