0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

GPF芯片的單片機(jī)編程開(kāi)發(fā)技巧案例詳細(xì)說(shuō)明

j4AI_wujianying ? 來(lái)源:未知 ? 作者:易水寒 ? 2018-06-18 16:57 ? 次閱讀

工作了7個(gè)月之久,對(duì)單片機(jī)編程也開(kāi)始慢慢熟悉起來(lái),以前總是知道單片機(jī)就是定時(shí)器,狀態(tài)機(jī),中斷這些東西結(jié)合起來(lái)效率是相當(dāng)高的,但是自從接手開(kāi)發(fā)GPF這個(gè)芯片之后,我發(fā)現(xiàn)了另外一種單片機(jī)的開(kāi)發(fā)技巧,高手請(qǐng)繞道。

我們都知道,在程序中,延時(shí)會(huì)影響單片機(jī)的實(shí)時(shí)性能,導(dǎo)致效率明顯降低,但是在GPF這個(gè)芯片的開(kāi)發(fā)中,系統(tǒng)延時(shí)和初始化被供應(yīng)商做到了一塊,所以調(diào)用程序,必須要做一定的loop才能使得程序能夠正常的跑起來(lái),其實(shí)我也不知道她們?yōu)槭裁匆@么做。

在工作中,改一份源碼不是隨隨便便就可以改的,當(dāng)時(shí)做了這么一個(gè)程序,源碼我就不公開(kāi)了,寫(xiě)個(gè)案例解釋:

void test()

{

int i = 0 ;

int tick ;

int BatteryStatus = 0;

int Voltage ;

int count = 0 ;

int Voltage_value ;

char ch ;

scanf("%d",&BatteryStatus);

while(1)

{

delay_20ms();

switch(BatteryStatus)

{

case 1:

if(count == 50)

{

printf("0x%x\n",0xE1);

count = 0 ;

};break ;

case 2:

if(count == 50)

{

printf("0x%x\n",0x90); //發(fā)通用'1'信號(hào)

count = 0 ;

};break ;

default:

break ;

}

count++ ;

#if 0

ch = getch(); //假設(shè)我在這設(shè)立一個(gè)按鍵

if(ch == 'q')

{

printf("%x",0x48);

break ;

}

#endif

}

}

在while循環(huán)中,首先進(jìn)去是延時(shí)20個(gè)ms,然后count計(jì)數(shù)器加加,當(dāng)加到50次也就是一秒鐘了,然后清零。此時(shí)若按下按鍵,不會(huì)受到干擾,程序正常運(yùn)行,效率依然很高。如果這時(shí)候delay_20ms改成delay_1000ms,程序掃描按鍵每次就要等待1s鐘,影響效率。計(jì)數(shù)值可以自我估計(jì)一下,不需要太準(zhǔn),這樣的程序在延時(shí)不需要太精準(zhǔn)的可以實(shí)現(xiàn)和定時(shí)器差不多一樣的功能。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6030

    文章

    44489

    瀏覽量

    631989
  • 定時(shí)器
    +關(guān)注

    關(guān)注

    23

    文章

    3231

    瀏覽量

    114329
  • GPF
    GPF
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    7654

原文標(biāo)題:?jiǎn)纹瑱C(jī)編程開(kāi)發(fā)技巧經(jīng)驗(yàn)分享

文章出處:【微信號(hào):wujianying_danpianji,微信公眾號(hào):?jiǎn)纹瑱C(jī)精講吳鑒鷹】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    51單片機(jī)教程之單片機(jī)硬件結(jié)構(gòu)的詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)教程之單片機(jī)硬件結(jié)構(gòu)的詳細(xì)說(shuō)明內(nèi)容包括了:一內(nèi)部結(jié)構(gòu)與引腳說(shuō)明,二
    發(fā)表于 10-23 11:04 ?32次下載
    51<b class='flag-5'>單片機(jī)</b>教程之<b class='flag-5'>單片機(jī)</b>硬件結(jié)構(gòu)的<b class='flag-5'>詳細(xì)說(shuō)明</b>

    51單片機(jī)的頭文件有哪些代碼詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)的頭文件有哪些代碼詳細(xì)說(shuō)明。
    發(fā)表于 09-18 17:21 ?7次下載
    51<b class='flag-5'>單片機(jī)</b>的頭文件有哪些代碼<b class='flag-5'>詳細(xì)說(shuō)明</b>

    51單片機(jī)的C語(yǔ)言關(guān)鍵字詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)的C語(yǔ)言關(guān)鍵字詳細(xì)說(shuō)明。
    發(fā)表于 08-21 17:31 ?5次下載
    51<b class='flag-5'>單片機(jī)</b>的C語(yǔ)言關(guān)鍵字<b class='flag-5'>詳細(xì)說(shuō)明</b>

    51單片機(jī)的C程序基本架構(gòu)詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)的C程序基本架構(gòu)詳細(xì)說(shuō)明。
    發(fā)表于 08-15 17:32 ?7次下載
    51<b class='flag-5'>單片機(jī)</b>的C程序基本架構(gòu)<b class='flag-5'>詳細(xì)說(shuō)明</b>

    如何同時(shí)使用51單片機(jī)的定時(shí)器0和串口使用問(wèn)題詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何同時(shí)使用51單片機(jī)的定時(shí)器0和串口使用問(wèn)題詳細(xì)說(shuō)明。
    發(fā)表于 08-13 17:32 ?27次下載
    如何同時(shí)使用51<b class='flag-5'>單片機(jī)</b>的定時(shí)器0和串口使用問(wèn)題<b class='flag-5'>詳細(xì)說(shuō)明</b>

    進(jìn)行單片機(jī)串口通信的方式詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是進(jìn)行單片機(jī)串口通信的方式詳細(xì)說(shuō)明
    發(fā)表于 08-01 17:35 ?1次下載
    進(jìn)行<b class='flag-5'>單片機(jī)</b>串口通信的方式<b class='flag-5'>詳細(xì)說(shuō)明</b>

    51單片機(jī)中斷相關(guān)寄存器的詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的使用51單片機(jī)中斷相關(guān)寄存器的詳細(xì)說(shuō)明。
    發(fā)表于 06-26 17:43 ?0次下載
    51<b class='flag-5'>單片機(jī)</b>中斷相關(guān)寄存器的<b class='flag-5'>詳細(xì)說(shuō)明</b>

    51單片機(jī)中斷系統(tǒng)的原理和結(jié)構(gòu)詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)中斷系統(tǒng)的原理和結(jié)構(gòu)詳細(xì)說(shuō)明。
    發(fā)表于 11-19 08:00 ?2次下載
    51<b class='flag-5'>單片機(jī)</b>中斷系統(tǒng)的原理和結(jié)構(gòu)<b class='flag-5'>詳細(xì)說(shuō)明</b>

    單片機(jī)C語(yǔ)言編程的關(guān)鍵字詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)C語(yǔ)言編程的關(guān)鍵字詳細(xì)說(shuō)明。
    發(fā)表于 12-10 17:32 ?23次下載
    <b class='flag-5'>單片機(jī)</b>C語(yǔ)言<b class='flag-5'>編程</b>的關(guān)鍵字<b class='flag-5'>詳細(xì)說(shuō)明</b>

    單片機(jī)的指令大全詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)的指令大全詳細(xì)說(shuō)明。
    發(fā)表于 12-26 11:39 ?24次下載
    <b class='flag-5'>單片機(jī)</b>的指令大全<b class='flag-5'>詳細(xì)說(shuō)明</b>

    STM32單片機(jī)的輸入捕獲實(shí)驗(yàn)詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是STM32單片機(jī)的輸入捕獲實(shí)驗(yàn)詳細(xì)說(shuō)明。
    發(fā)表于 01-02 08:00 ?3次下載
    STM32<b class='flag-5'>單片機(jī)</b>的輸入捕獲實(shí)驗(yàn)<b class='flag-5'>詳細(xì)說(shuō)明</b>

    愛(ài)上單片機(jī)的工程資料詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是愛(ài)上單片機(jī)的工程資料詳細(xì)說(shuō)明包括了:USB轉(zhuǎn)TTL電平模塊軟件,STC-ISP下載編程燒錄軟件,第一個(gè)工程,更多HEX文件,舉一反十三HEX文件,第一個(gè)作品
    發(fā)表于 01-17 08:00 ?23次下載
    愛(ài)上<b class='flag-5'>單片機(jī)</b>的工程資料<b class='flag-5'>詳細(xì)說(shuō)明</b>

    K64系列單片機(jī)的參考手冊(cè)詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是K64系列單片機(jī)的參考手冊(cè)詳細(xì)說(shuō)明 本文描述了微控制器的特點(diǎn)、結(jié)構(gòu)和編程模型。
    發(fā)表于 03-02 08:00 ?12次下載
    K64系列<b class='flag-5'>單片機(jī)</b>的參考手冊(cè)<b class='flag-5'>詳細(xì)說(shuō)明</b>

    單片機(jī)遙控解碼的源代碼詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)遙控解碼的源代碼詳細(xì)說(shuō)明。
    的頭像 發(fā)表于 09-26 11:07 ?3147次閱讀

    PIC系列單片機(jī)程序設(shè)計(jì)基礎(chǔ)知識(shí)詳細(xì)說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是PIC系列單片機(jī)程序設(shè)計(jì)基礎(chǔ)知識(shí)詳細(xì)說(shuō)明
    的頭像 發(fā)表于 04-05 18:09 ?4482次閱讀