1. 設計電路需要哪些軟硬體工具
設計電路需要軟硬體工具:萬用表、示波器、電烙鐵、螺絲刀等等。
必須要懂一款畫SCH和PCB的軟體:可以是Altium,Pads,Allegro等。
必須要懂電路模擬軟體:模電模擬multisim,數電模擬proteus等。
必須要懂單片機開發軟體: KeilC或者IAR。
可以學習下FPGA:Quartus, modelsim。
射頻電路:
射頻簡稱RF射頻就是射頻電流,它是一種高頻交流變化電磁波的 簡稱。每秒變化小於1000次的交流電稱為低頻電流,大於1000次的稱為高頻電流,而射頻就是這樣一種高頻電流。有線電視系統就是採用射頻傳輸方式的。
在電子學理論中,電流流過導體,導體周圍會形成磁場;交變電流通過導體,導體周圍會形成交變的電磁場,稱為電磁波。
在電磁波頻率低於100kHz時,電磁波會被地表吸收,不能形成有效的傳輸,但電磁波頻率高於100kHz時,電磁波可以在空氣中傳播,並經大氣層外緣的電離層反射,形成遠距離傳輸能力,我們把具有遠距離傳輸能力的高頻電磁波稱為射頻,英文縮寫:RF。
2. 怎麼做一個簡單電路
3. 怎樣設計硬體電路
先學會把別人的電路從電路板上扒下來,看懂原理後自己畫板子,自己調試實現功能。等這些都沒問題了,在考慮設計自己的硬體電路吧。一般的硬體工程師都是這么出來的
4. 怎麼學習電路硬體設計
很多初學者對於學習硬體電路不知如何下手,其實「硬體電路」這個東西是由一部分一部分的「單元模塊電路」組成的,所謂的「單元模塊電路」包括:各種穩壓電源電路(像LM7805、LM2940、LM2576等)、運算放大器電路(LM324、LM358等)、比較器電路(LM339)、單片機最小系統、H橋電機驅動電路(MC33886、L298等)、RC/LC濾波、場效應管/三極體組成的電子開關等等。
現在不要以為電阻電容是最基礎的,「單元模塊電路」才是最基礎的東西,只有「單元模塊電路」才能實現最基礎的功能:穩壓、信號處理、驅動負載等。
把整塊電路分成好幾部分,學習起來就會容易很多了,今天看懂穩壓電源,明天看懂運算放大器……一個星期就能看懂一般的電路圖了,主要在於逐個領悟、各個擊破。單元電路網路圖片有的是,沒事多查查多問問。
光能看懂電路圖也是不夠的,還要有動手能力。
1、先能照著「單元模塊電路圖」在麵包板上搭建電路,使之能正常工作(看懂元器件PDF資料,了解元器件引腳排布和各個電氣參數);
2、緊接著能在萬能電路板(洞洞板)上焊接一塊電路,可以由幾部分單元電路組成的那種(這里「布線」一定要多學學!對往下學很有用);
3、在此基礎上學習Protel等電路設計軟體,能設計一整塊的電路板PCB。
學習電路一定要循序漸進,邊理論邊實踐。
謹以一家之言,希望能對你有所幫助!
5. 自學硬體電路設計能學會嗎
雖然是說世事無絕對,但是對於小白而言難度非常大,關鍵是你如果沒有理論基礎就是聽天書,根本就無從學起。首先要熟悉元器件的基礎理論,比如元器件原理、選型及使用,學會繪制原理圖,並通過軟體完成PCB設計,熟練掌握工具的技巧使用,學會如何優化及調試電路等。
有了理論基礎,然後就是開始考慮要如何完整地設計一套硬體電路,這個時候就是要參考市面上成功的設計,從簡到繁,從最簡單的開始入手,吃透它的設計理念,設計框架的,那就要搞清楚要實現什麼功能,然後找有否能實現同樣或相似功能的參考電路板,先不要說上來就自主創新,那都是扯淡,先從模仿做起,看懂別人為什麼要這樣設計才行。
等基礎的經驗有了,能完成最簡單的工作了,就可以考慮跟個老師,在身邊能系統的學習相關知識,來增長自己的經驗了,當然這只是一個開端,離獨自完成項目還差的遠!
6. 什麼是硬體電路設計
設計搭建完成某種功能的電路或者為軟體提供運行電路平台
7. 急急急!!!求製作計時器的硬體電路
【摘 要】籃球比賽30秒鍾規則規定:進攻球隊在場上控球時必須在30秒鍾內投籃出手(NBA比賽為24秒,全美大學體育聯合會比賽中為35秒),因此在比賽時裁判既要看比賽又要看秒錶計時,而本文介紹的30秒倒計時器可以解決此問題。
【關鍵詞】AT89C51單片機、30秒倒計時器、LED
30秒倒計時器的設計和製作有很多方法,本文介紹的30秒倒計時器以AT89C51單片機作為控制單元,採用兩個數碼管顯示時間,用三個按鍵分別控制計時器的計時開始、復位和暫停。倒計時器初始狀態顯示「30」,當裁判員按下計時鍵,30秒倒計時開始,當計時器時間減到0時,計時器發出聲光報警,提示裁判計時時間已到。
一、電路設計
30秒倒計時器的電路主要由電源電路、單片機最小系統、按鍵輸入、顯示驅動電路、報警電路組成,30秒倒計時器控制電路如圖1所示。
圖1 30秒倒計時器電路原理圖
1、按鍵輸入
「30秒倒計時器」採用了三個按鍵來完成計數器的啟動計數、復位、暫停/繼續計數等功能。
(1)K1鍵:啟動按鈕(P3.2)。
按下K1鍵,計數器倒計時開始,數碼管顯示數字從30開始每秒遞減計數,當遞減到到零時,報警電路發出聲、光報警信號。當計數器處於暫停狀態時按下K1鍵將回到計時狀態。
(2)K2鍵:復位按鈕(P3.3)。
按下K2鍵,不管計數器工作於什麼狀態,計數器立即復位到預置值 「30」 ,在報警狀態時按下K2鍵還可取消報警。
(3)K3鍵:暫停/計時切換按鈕(P3.4)。
當計數器處於計時狀態時按下該鍵計數器暫停計時,數碼管顯示數字保持不變;當計數器處於暫停狀態按下該鍵計數器將回到計時狀態;初始狀態時該鍵無效。
2、顯示驅動電路
「30秒倒計時器」用兩個共陽數碼管來顯示時間,數碼管顯示方式為動態顯示。顯示驅動電路中,數碼管的段碼引腳通過470歐的電阻接到單片機的P1口,兩個片選引腳各通過一個9012連接到正5V電源,由P3.0和P3.1控制。
4、報警電路
計時時間減到0,顯示數碼管顯示「00」時,發光二極體D1由P3.5控制發出光報警,同時蜂鳴器由P3.7控制發出聲報警。
二、軟體編程思路
1、全局變數
「30秒倒計時器」動作流程主要受三個全局變數控制。首先是bit變數「act」,當「act」為「1」時倒計時開始,為「0」時倒計時停止,「act」初值為「0」,可以由按鈕操作將其置「1」或清「0」。第二個全局變數是char變數「time」,存放倒計時的時間,當倒計時時間為0時,發出聲光報警。變數「time」的初值為30,定時中斷服務程序在「act」為1時,每1s對其進行減1操作,減到0時保持為0,按下「復位鍵」可將「time」復位為30。第三個全局變數是int變數「t」,記錄響應定時中斷0的次數。根據初始化定義,定時器0以方式1工作,每1ms發出一次中斷請求。控製程序只開放了定時器0中斷,因此不會有比定時器0中斷更高級的中斷被允許,所以每次請求都會立刻被響應。響應後在中斷服務程序中將全局變數「t」加1記錄響應中斷次數,每響應1000次即為1秒鍾。變數「t」初值為0,在中斷服務程序中加1,當「t」為2000時由中斷服務程序清0。在按鍵驅動程序中,按下啟動鍵、復位鍵、暫停/啟動鍵時將「t」清0,目的是從0ms開始計時。
2、控制流程
主程序主要用來檢測全局變數「time」當「time」為0時發出「聲光報警」。按鍵驅動、顯示驅動和「time」操作都在定時器0中斷服務程序中進行。其控制流程如圖2所示。
圖2 控制流程圖
三、軟體程序設計
1、數碼管驅動程序
到計時器的兩個數碼管以動態顯示的方式顯示計時時間「time」(全局變數),LED1顯示「time」的十位,LED2顯示「time」的個位。
(1)定義段碼數據口和片選信號
根據實際電路,在C51中定義段碼的數據口為P1,兩個片選信號為P3.0和P3.1。定義如下:
#define an P1
sbit wei1=P3^0;
sbit wei2=P3^1;
(2)定義字形碼
LED顯示數字0~9以及全滅的字形碼表格放在數組zixing[]中。字形碼是固定的表格,定義時加上關鍵字「code」 表示該表格存放在程序存儲器中。
unsigned char code zixing[]=
{
0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff
};
(3)定義數碼管LED1和LED2的顯示變數
為了增加驅動程序的可移植性,筆者為數碼管LED1和LED2定義了顯示變數。顯示變數就是本驅動程序的對外介面,外部程序只要改變顯示變數的值就可改變數碼管顯示的數值。定義方式如下:
unsigned char led_str[2]={10,10};
led_str[0]直接對應數碼管LED1, led_str[1]直接對應數碼管LED2。本項目中由專門的子程序將全局變數time計算拆分成led_str[0]和led_str[1]。
void js()
{
led_str[1]=time/10;
led_str[0]=time;
}
(4)數碼管驅動程序
數碼管驅動程序「void chushi(char i)」在定時中斷服務程序中被調用執行。根據初始化程序的定義,定時中斷服務程序每1ms被執行一次。定時中斷服務程序中運用全局變數「t」記錄進入該服務程序的次數,「t」計滿2000由定時中斷服務程序清零。
數碼管驅動程序的參數「char i」是用來確定當前點亮的是LED1還是LED2,當參數為「0」時點亮LED1,參數為「1」時點亮LED2。如果我們希望偶數次進入定時中斷服務程序時點亮LED1,奇數次進入定時中斷服務程序時點亮LED2,我們可以用程序調用語句「chushi(t%2);」輕松實現。
進入數碼管驅動程序後首先調用子函數js(),計算當前的led_str[0]和led_str[1]。接下來將兩個數碼管全部熄滅以防止余暉的出現。最後點亮需要點亮的數碼管並送出字型碼。驅動程序代碼如下:
void chushi(char i)
{
js(); //計算顯示變數
an=0xff; //去余暉
wei1=i; wei2=!i; //確定片選
an=zixing[led_str[i]]; //送字型碼
}
2、按鍵驅動程序
按鍵驅動程序分為按鍵識別和按鍵功能執行兩部分。按鍵功能執行可在按鍵按下時或按鍵抬起後執行,文中將其設計在按鍵抬起後執行。
(1)定義按鍵I/O地址
根據實際電路,三個按鍵(啟動鍵、復位鍵、暫停/啟動鍵)分別接在P3口的P3.2,P3.3和P3.4三個引腳上。為了取鍵值方便還將P3口定義為「iokey」,程序中可作定義如下:
#define iokey P3
sbit key1=P3^2;
sbit key2=P3^3;
sbit key3=P3^4;
(2)按鍵驅動流程
按鍵識別的通用流程為:I/O口寫「1」→判斷有無鍵按下→延時去抖→確定鍵值→等待按鍵抬起→執行按鍵功能。按鍵驅動程序中定義了兩個靜態變數「ts」 和「kv」,分別用來延時去抖和存放鍵值。
(3)延時去抖
靜態變數「ts」用來延時去抖。按鍵驅動程序在定時中斷服務程序中每1ms被執行一遍,每檢測到有鍵按下「ts」加1,檢測到無鍵按下「ts」清0。按鍵連續按下20ms,則連續20次執行按鍵驅動程序時都檢測到有鍵按下,此時靜態變數「ts」累加到20,可確認按鍵按下有效。
為防止按鍵一直按著不放而使「ts」累加到溢出,確認有鍵按下後可使「ts」的值保持為20,或大於20的某一個值如21。
(4)取鍵值
確認有鍵按下後即可通過讀取按鍵的I/O口狀態來得到鍵值。為讀取P3.2、P3.3和P3.4引腳狀態,屏蔽P3口其他引腳的影響,可將讀取後的數值按位或上11100011B(0xE3)再送給靜態變數「kv」。
靜態變數「kv」存放按鍵的鍵值,無鍵按下或按鍵抬起後kv的值為0。按下啟動鍵key1時kv=11111011B(0xFB),按下復位鍵key2時kv=11110111B(0xF7),按下暫停/啟動鍵key3時kv=11101111B(0xEF)。
(5)執行按鍵功能
按鍵抬起後第一次執行按鍵驅動程序時,靜態變數「kv」任保持著按鍵按下時最後得到的鍵值,以該鍵值作為參數調用按鍵執行程序「actkey(kv);」即可執行按鍵功能。調用後kv值立刻清0,確保按一次鍵執行一次按鍵功能。驅動程序代碼如下:
void key()
{
static unsigned char kv=0;
static unsigned char ts=0;
key1=1;key2=1;key3=1;
if(!(key1
8. 怎麼做硬體電路
你看看模擬電路和數字電路,如果有具體要求的話,請說清楚點,我們一起來研究哈!
9. 單片機硬體電路設計有哪些步驟
要想確定與單片機相連的晶元,首先要看你想拿它來做什麼,如果是採集信號的話內,還要看你採集的是那種容信號,如果是音頻信號,那麼可以選擇一些音頻解碼晶元,如AD1836;如果是採集視頻信號,就要選擇視頻解碼晶元,如ADV7171。總之要根據前端的信號類型選擇相應的晶元,許多感測器的作用就是採集外部的各種信號。 晶元確定好後,進行引腳相連主要看兩大方面的:一是控制介面,即單片機通過此介面實現對晶元的寄存器設置,實現晶元的各種功能。常見的控制介面是串列控制介面,有的支持SPI,有的支持I2C;二是數據通信介面,即用於單片機和晶元之間的數據傳輸,把採集的數據通過這個介面發給單片機,這個介面有串列的也有並行。一般引腳連接在晶元手冊中會有一個推薦電路,可以去參考
10. 設計一個硬體電路
溫度感測器要求不高的話,可用最普遍的NTC溫感,氣溫一般用10K,單片機用STC系列,帶10位AD的,用STC的好處是下載程序非常方便,上手快。無線傳輸看你想傳到哪?和電腦對傳可用網上大把多的433M串口透傳模塊。
程序也很簡單,AD采樣,二分查表,得出溫度數通過串口發送到無線模塊,另一邊無線模塊串口得到數據,用串口助手等接收就行了