注:本文是作者以前發(fā)表在其個(gè)人博客,現(xiàn)在發(fā)布到“聚豐開發(fā)”專欄
10.能否通過一些應(yīng)用實(shí)例來讓大家了解應(yīng)廣雙核單片機(jī)針對(duì)某些應(yīng)用場(chǎng)合的便捷性?
例1:
目前價(jià)格低于0.2美元的單片機(jī)大都不帶UART(串口)硬件,如果用一款低價(jià)單片機(jī)開發(fā)需要支持串口通訊的產(chǎn)品,只能是用IO口軟件模擬串口。
用IO口軟件模擬串口的代碼并不復(fù)雜,但如果單片機(jī)還要處理其它事情,就會(huì)遇到麻煩。假定通訊速率是9600,這樣每個(gè)位寬大約為104us。
一種方法是直接在主程序中循環(huán)完成通訊,這樣當(dāng)有數(shù)據(jù)收發(fā)的時(shí)候就無法處理其它事情,每個(gè)字節(jié)會(huì)占用超過1ms的時(shí)間,數(shù)據(jù)越多,占用的時(shí)間越長,對(duì)于數(shù)據(jù)發(fā)送處理還好,數(shù)據(jù)接收就會(huì)很麻煩,理論上需要程序每52us去查看一次IO狀態(tài)才行,這樣的程序只要簡單一想就知道編寫起來不是一件簡單的事情。
另一種方法是用中斷,這種處理方法比循環(huán)的要簡便一些,但要做到同時(shí)收發(fā)和兼顧處理其它事情,同樣也不是一件簡單的事情。
對(duì)于普通單片機(jī)如果只處理串口數(shù)據(jù)收發(fā),不做其它事情,不管程序循環(huán)還是中斷方式,程序相對(duì)都不會(huì)太過復(fù)雜,上面只所以復(fù)雜是需要同時(shí)處理其它的事情。
使用應(yīng)廣雙核單片機(jī)就可以很好的解決這個(gè)問題,首先價(jià)格上不會(huì)超過0.2美元;其次代碼會(huì)相對(duì)簡單,一個(gè)內(nèi)核處理主程序,一個(gè)內(nèi)核專門負(fù)責(zé)串口通訊,兩者都會(huì)有很好的實(shí)時(shí)性。
例2:
處理38K紅外遙控碼。
38K紅外遙控碼是頻率38K占空比為1:2的方波,如果單片機(jī)硬件不支持IR接口,就需要單片機(jī)能連續(xù)輸出寬度約為9us和18us的高低電平。如果要單片機(jī)輸出這種周期持續(xù)穩(wěn)定的方波,在發(fā)碼期間基本上不能使用中斷,象東芝碼一次發(fā)碼時(shí)間大約需要60ms,這樣就會(huì)嚴(yán)重影響程序的計(jì)時(shí)等功能。
紅外碼的接收相對(duì)要好一些,每個(gè)碼都有幾百微秒的時(shí)間,采用中斷完全可以實(shí)現(xiàn)解碼,唯一麻煩的是紅外碼通常都是數(shù)據(jù)包,而且數(shù)據(jù)包中間還包含一些特殊格式,不象串口所有的字節(jié)碼都是固定格式,這樣需要程序按照特定流程才能解碼,無法象串口一樣只要一個(gè)字節(jié)的接收程序就可以完成所有數(shù)據(jù)的接收,所以紅外的接收解碼程序會(huì)比較長,中間如果夾入其它事情處理就會(huì)變得很復(fù)雜。
以我個(gè)人的經(jīng)驗(yàn),普通單片機(jī)完成紅外遙控碼的處理,大約需要2~3天時(shí)間,最終效果不會(huì)太好,但如果使用應(yīng)廣雙核單片機(jī),半天即可完成,代碼數(shù)量要少許多,效果則是更理想。
例3:
一個(gè)用應(yīng)廣雙核單片機(jī)做的紅外遮擋開光(反射式)全部代碼。
IR_SWequpb.1
IR_INPUTequpa.0
IR_OUTPUTequpa.6
byte ir_new
byte ir_old
byte ir_enable
byte i
byte ir_new1
byte ir_new2
byte ir_new3
gotomain0
gotomain1
//----------------FPPA0-------------------
main0:
.ADJUST_OTP_IHRCR8MIPS// IHRC/2 = 8MIPS, WatchDog Disable, RAM 0,1 temporary be used
sp = 0x30
disgint
inten = 0
mova,0b000_11_111//disable timer
movt16m,a
set1pbc.1
set0IR_SW
set0pac.0
set1pac.6
set0IR_OUTPUT
delay200
ir_new = 0
ir_old = 0
ir_enable = 0
mova,0
movintrq,a
set1fppen.1//eanble FPPA1
ir_enable = 1
i = 20
while(i)
{
delay200
i--
}
if(IR_INPUT)
{
ir_old = 1
}
else
{
ir_old = 0
}
ir_enable = 0
i = 5
while(i)
{
delay200
i--
}
clkmd.1 = 1//enable watch dog
main0_loop:
wdreset
callcheck_ir
if(ir_new != ir_old)
{
if(ir_new != 1)
{
togIR_SW
}
ir_old = ir_new
}
i = 100
while(i)
{
delay200
i--
}
gotomain0_loop
check_ir:
ir_enable = 1
i = 20
while(i)
{
delay200
i--
}
if(IR_INPUT)
{
ir_new1 = 1
}
else
{
ir_new1 = 0
}
i = 5
while(i)
{
delay200
i--
}
if(IR_INPUT)
{
ir_new2 = 1
}
else
{
ir_new2 = 0
}
i = 5
while(i)
{
delay200
i--
}
if(IR_INPUT)
{
ir_new3 = 1
}
else
{
ir_new3 = 0
}
if((ir_new1 == ir_new2) && (ir_new2 == ir_new3))
{
ir_new = ir_new1
}
else
{
ir_new = ir_old
}
ir_enable = 0
i = 20
while(i)
{
delay200
i--
}
ret
//----------------FPPA1-------------------
main1:
sp = 0x38
delay200
main1_loop://output 38k IR signal
if(ir_enable)
{
set1IR_OUTPUT
delay33
set0IR_OUTPUT
delay67
}
else
{
set0IR_OUTPUT
delay10
}
gotomain1_loop
11.應(yīng)廣雙核單片機(jī)存在哪些不足?
回答:
到目前為止已經(jīng)上市的所有型號(hào)最低工作電壓為2.5V,這個(gè)電壓值有點(diǎn)高,不適合電池供電的產(chǎn)品,如果能做到2.2V會(huì)更具競(jìng)爭力。了解到的信息是應(yīng)廣科技有計(jì)劃推出更低工作電壓的版本。
編譯工具存在一些不足,對(duì)C語言的支持并不是很理想,仿真時(shí)選擇3.3V工作電壓容易產(chǎn)生低電壓復(fù)位(此時(shí)需要保證工作電壓大于3.3V)。對(duì)于有經(jīng)驗(yàn)的工程師這點(diǎn)不是關(guān)鍵問題,開發(fā)過程可以繞過這些不足。
部分型號(hào)的ADC精度略微偏低,但可滿足大部分場(chǎng)合的應(yīng)用需求。
某些功能上存在個(gè)別瑕疵,不過應(yīng)廣科技在其網(wǎng)頁上已經(jīng)將這些瑕疵全部列舉出來,并提出了相應(yīng)解決方法。這一點(diǎn)比其它公司要做得好,其它公司往往是用到最后才發(fā)現(xiàn)有這樣那樣的問題,還有可能是無法解決的問題,讓用戶進(jìn)退兩難。
12.應(yīng)廣科技對(duì)客戶的技術(shù)支持是否及時(shí)?
回答:
應(yīng)廣科技作為一家成立時(shí)間不長的公司,非常重視客戶服務(wù),無論大小客戶,只要你在使用應(yīng)廣科技的產(chǎn)品進(jìn)行開發(fā),所有技術(shù)問題都有專人進(jìn)行回復(fù),通常會(huì)在第二個(gè)工作日回復(fù)電子郵件。
13.應(yīng)廣的雙核單片機(jī)保密性怎樣?花多少錢可以解密?
回答:
相較其它臺(tái)系單片機(jī),應(yīng)廣有著良好的保密性,目前市場(chǎng)上暫無提供針對(duì)應(yīng)廣單片機(jī)的解密服務(wù)。
14.如果我想用應(yīng)廣的單片機(jī)開發(fā)產(chǎn)品?什么地方可以買到芯片和開發(fā)工具?
回答:
這個(gè)需要聯(lián)系當(dāng)?shù)氐拇砩?,如果不知道代理商可以直接?lián)系應(yīng)廣科技進(jìn)行咨詢,應(yīng)廣科技網(wǎng)址www.padauk.com.tw
我這里不提供應(yīng)廣單片機(jī)裸片,但可以根據(jù)客戶需求用應(yīng)廣雙核單片機(jī)完成產(chǎn)品開發(fā),并且不收開發(fā)費(fèi)。
15.哪些產(chǎn)品適合選用應(yīng)廣的單片機(jī)?
回答:
這個(gè)問題有點(diǎn)不好回答,其實(shí)蠻多場(chǎng)合都挺適合的,可以這么說,相信你一旦使用過應(yīng)廣的產(chǎn)品,就會(huì)喜歡上它。
在我看來,用義隆153做有點(diǎn)難,用松翰和合泰單片機(jī)做有點(diǎn)貴,這類產(chǎn)品最適合應(yīng)廣的單片機(jī);當(dāng)然,那種帶有通訊等實(shí)時(shí)性強(qiáng)功能的低成本方案應(yīng)廣更是不二選擇。
-
單機(jī)片
+關(guān)注
關(guān)注
0文章
50瀏覽量
11710
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論