日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]基于《Stellaris外設(shè)驅(qū)動庫》的SysCtl例程:軟件復位示例掌握庫函數(shù)SysCtlReset()的用法。程序運行后,LED1和LED2交替閃爍數(shù)次,以表明正常工作了。稍后,由于執(zhí)行函數(shù)SysCtlReset()而導致芯片復位重來,LED1和LED2又

基于《Stellaris外設(shè)驅(qū)動庫》的SysCtl例程:軟件復位示例

掌握庫函數(shù)SysCtlReset()的用法。

程序運行后,LED1和LED2交替閃爍數(shù)次,以表明正常工作了。稍后,由于執(zhí)行函數(shù)SysCtlReset()而導致芯片復位重來,LED1和LED2又會交替閃爍數(shù)次。如此反復。

主函數(shù):

// 包含必要的頭文件
#include "LED.H"
#include
#include
#include
#include
#include
#include


// 將較長的標識符定義成較短的形式
#define SysCtlPeriEnable SysCtlPeripheralEnable
#define SysCtlPeriDisable SysCtlPeripheralDisable
#define GPIOPinTypeIn GPIOPinTypeGPIOInput
#define GPIOPinTypeOut GPIOPinTypeGPIOOutput
#define GPIOPinTypeOD GPIOPinTypeGPIOOutputOD


// 定義KEY
#define KEY_PERIPH SYSCTL_PERIPH_GPIOG
#define KEY_PORT GPIO_PORTG_BASE
#define KEY_PIN GPIO_PIN_5


// 防止JTAG失效
void JTAG_Wait(void)
{
SysCtlPeriEnable(KEY_PERIPH); // 使能KEY所在的GPIO端口
GPIOPinTypeIn(KEY_PORT , KEY_PIN); // 設(shè)置KEY所在管腳為輸入

if ( GPIOPinRead(KEY_PORT , KEY_PIN) == 0x00 ) // 如果復位時按下KEY,則進入
{
for (;;); // 死循環(huán),以等待JTAG連接
}

SysCtlPeriDisable(KEY_PERIPH); // 禁止KEY所在的GPIO端口
}


// 定義全局的系統(tǒng)時鐘變量
unsigned long TheSysClock = 12000000UL;


// 延時
void Delay(unsigned long ulVal)
{
while ( --ulVal != 0 );
}


// 主函數(shù)(程序入口)
int main(void)
{
int i;

JTAG_Wait(); // 防止JTAG失效,重要!

LED_Init(LED1 | LED2); // 初始化LED1和LED2
LED_On(LED1); // 點亮LED1
LED_Off(LED2); // 熄滅LED2

for ( i = 0; i < 6; i++ ) // 使LED閃爍數(shù)次,表明已復位
{
LED_Toggle(LED1 | LED2);
Delay(200 * (TheSysClock / 4000));
}

LED_Off(LED1 | LED2); // 熄滅LED

Delay(3500 * (TheSysClock / 4000)); // 延遲一段時間

SysCtlReset(); // 軟件復位

for (;;) // 不會執(zhí)行到這里
{
}
}

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉