嵌入式系統概論題
嵌入式系統概論題庫
[1]本題是以由Assembly呼叫C之程式,並用PORTB的Bit 1作為LED的控制,試完成1至10的填空。
AREA Init,CODE,READONLY
__(1)__
EXPORT__ENTRY
__ENTRY
ResetEntry
ldrsp,=0x33ff8000
IMPORT __(2)___
BLMain
__(3)___ delay
delay
sub r0,r0,#1
cmp r0,#0x0
bne __(4)__
____(5)___
END
------------------------------------------------------------
#define rGPBCON(*(volatile unsigned *)0x56000010)
#define rGPBDAT(*(volatile unsigned *)0x56000014)
#define rGPBUP(*(volatile unsigned *)0x56000018)
__(6)__ int delay(int time);
__(7)__ Main()
{
rGPBCON=__(8)___
rGPBUP=0xffff;
while(1)
{
rGPBDAT=__(9)___;
delay(0x1fffff);
rGPBDAT=__(10)__;
delay(0x1fffff);
}}
[2]本題也是Assembly呼叫C之程式,並用PORTB的Bit 3與Bit 2作為LED的控制,試完成1至10的填空。
AREA Init,__(1)___,__(2)___
ENTRY
EXPORT__ENTRY
__ENTRY
ResetEntry
IMPORT Main
BL__(3)___
END
--------------------------------------------------
#defineLED32_ON()(rGPBDAT &= ~__(4)__)/* Bit3=Bit2=全亮*/
#defineLED32_OFFON()(rGPBDAT &= ~__(5)__)/* Bit3=暗、Bit2=亮*/
#defineLED32_ONOFF()(rGPBDAT |= ___(6)__)/* Bit3=亮、Bit2=暗*/
#defineLED32_OFF()(rGPBDAT |= ___(7)__)/* Bit3=Bit2=全暗*/
void delay(int i);
void delay(int i)
{
long j;
for (j=0;j<i;j++) ;
}
void Main()
{rGPBCON=__(8)__;
rGPBUP= __(9)__;
while(__(10)___)
{
LED32_ON();
delay(0x7fffff);
LED32_OFFON();
delay(0x7fffff);
LED32_ONOFF();
delay(0x7fffff);
LED32_OFF();
delay(0x7fffff);
}}
******************************************************