一区二区三区四区在线观看国产日韩 _在线综合+亚洲+欧美中文字幕_蜜桃久久精品乱码一区二区_欧美黄色片免费观看

24小時聯系電話:18217114652、13661815404

中文

您當前的位置:
首頁>
電子資訊>
行業資訊>
帶外部RAM的AVR上的Fr...

行業資訊

帶外部RAM的AVR上的FreeRTOS


由于片內RAM較低,因此AVR微控制器不是運行FreeRTOS調度程序的最佳選擇。Atmega128僅具有4K RAM,因此這將FreeRTOS功能限制為非常基本的功能。無論如何,可以通過添加可能連接到外部存儲器接口的額外RAM來解決此問題。以前我們已經構建了8K的外部存儲塊,所以現在我們可以使用FreeRTOS應用程序對其進行測試。



  讓我們繼續前面的代碼,該代碼運行一些簡單的任務(按鈕狀態讀取,LCD輸出和LED閃光燈),并且我們可以添加更多內容。我們將建立一個用于存儲堆的外部RAM。這將允許存儲大型數據緩沖區,而不必過多擔心堆和棧的重疊。


  首先,我們需要注意鏈接器選項。在AVRStudio5項目屬性中,AVR / GNU C鏈接器->其他輸入鏈接器選項:

 
  <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">-Wl,-defsym = __ heap_start = 0x801100,-defsym = __ heap_end = 0x8030ff</font></font>


  這將指示鏈接器僅將0x801100到0x8030ff(整個外部RAM)的內存區域用于堆。
  第二步是設置微控制器以使用外部存儲器。為了使內容整潔和模塊化,我們將創建單獨的驅動程序源文件xmem.c和xmem.h。并編寫簡單的XMEM_init()函數:

  <font style="vertical-align: inherit;"><font style="vertical-align: inherit;">無效vXMEMInit(void)</font></font><font></font><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
  {</font></font><font></font>
    MCUCR |= (1<<SRE);   /* External memory interface enable */<font></font>
    XMCRA = 0;<font></font>
    XMCRB |= (1<<XMM1)|(1<<XMM0);//PC7..PC5 released pins<font></font>
  }
  在主例程的開頭,我們簡單地調用此函數以在使用外部RAM之前對其進行初始化。

  編寫USART驅動程序
  我們將需要USART功能,以方便的方式調試和顯示信息。因此,首先,我們需要可以在任務中使用的驅動程序。使用USART的最方便的方法可能是通過隊列發送消息。這樣,任何任務都可以通過使用消息傳遞服務而不是直接訪問外圍設備來與USART通信。因此,我們將實現兩個隊列–一個用于TX,另一個用于RX通道。

  //receive and transmit queues<font></font>
  <font></font>
  xQueueHandlexRxedChars=NULL;<font></font>
  <font></font>
  xQueueHandlexCharsForTx=NULL;
  然后在USART初始化期間,我們創建隊列。

  xRxedChars=xQueueCreate(uxQueueLength,(signedchar)sizeof(signedchar));<font></font>
  <font></font>
  xCharsForTx=xQueueCreate(uxQueueLength,(signedchar)sizeof(signedchar));
  隊列長度是在初始化USART時給出的(在我們的示例中為30)。現在,當隊列準備就緒時,就可以使用它們與USART通信。通過兩個自定義函數放置和讀取發送到隊列的消息,這使生活更輕松:
  portBASE_TYPE xUSART0PutChar(unsigned char cOutChar)<font></font>
  {<font></font>
  //Return false if after the block time there is no room on the Tx queue.<font></font>
    if( xQueueSend( xCharsForTx, &cOutChar, xBlockTime ) != pdPASS )<font></font>
    {<font></font>
        return pdFAIL;<font></font>
    }<font></font>
    //enable usart UDRE interrupt to transmit<font></font>
    prvUDRIE0InterruptOn();<font></font>
    return pdPASS;<font></font>
  }<font></font>
  portBASE_TYPE xUSART0GetChar(unsigned char *pcRxedChar)<font></font>
  {<font></font>
  /* Get the next character from the buffer.  Return false if no characters<font></font>
    are available, or arrive before xBlockTime expires. */<font></font>
    if( xQueueReceive( xRxedChars, pcRxedChar, xBlockTime ) )<font></font>
    {<font></font>
        return pdTRUE;<font></font>
    }<font></font>
    else<font></font>
    {<font></font>
        return pdFALSE;<font></font>
    }<font></font>
  }
  當接收器隊列中沒有字符且發送隊列已滿時,這些功能可提供額外的安全性。您可能會注意到,在xUSART0PutChar()中調用了一個私有函數prvUDRIE0InterruptOn()。一旦發送隊列中至少有一個字符,這將啟用USART數據就緒中斷。

  通過中斷例程執行USART發送和接收。

請輸入搜索關鍵字

確定
一区二区三区四区在线观看国产日韩 _在线综合+亚洲+欧美中文字幕_蜜桃久久精品乱码一区二区_欧美黄色片免费观看
粉嫩绯色av一区二区在线观看| 国产一区二区三区在线观看免费视频| 亚洲国产成人tv| 久久成人av少妇免费| 日韩国产精品久久久| 成人午夜av影视| 欧美一区二区三区日韩视频| 国产精品麻豆99久久久久久| 免费精品99久久国产综合精品| 91首页免费视频| 久久久99精品免费观看不卡| 日韩成人精品在线观看| 色播五月激情综合网| 国产午夜精品理论片a级大结局| 亚洲成人动漫一区| 91在线观看污| 久久久影视传媒| 免费的成人av| 欧美丝袜丝nylons| 亚洲人成网站色在线观看| 国产精品影视在线观看| 日韩欧美在线影院| 视频一区在线视频| 欧美性三三影院| 一区二区三区在线免费视频 | 国产成人亚洲综合a∨婷婷| 欧美片网站yy| 夜夜揉揉日日人人青青一国产精品| 成人国产在线观看| 日本一区二区三区久久久久久久久不 | 678五月天丁香亚洲综合网| 亚洲六月丁香色婷婷综合久久 | 日韩亚洲欧美在线观看| 亚洲成人三级小说| 欧美少妇一区二区| 亚洲自拍偷拍av| 色妞www精品视频| 亚洲欧美日本在线| 色天天综合色天天久久| 亚洲欧美视频在线观看| 91浏览器打开| 又紧又大又爽精品一区二区| 91香蕉视频黄| 亚洲美女少妇撒尿| 在线区一区二视频| 亚洲成人免费电影| 在线不卡中文字幕播放| 日本亚洲电影天堂| 日韩精品专区在线| 国内偷窥港台综合视频在线播放| 精品国产乱码久久久久久1区2区| 久久99精品网久久| 亚洲精品一区二区在线观看| 国内精品伊人久久久久av影院| 精品国精品国产| 国产激情精品久久久第一区二区| 国产网站一区二区三区| 成人av午夜影院| 亚洲欧美电影一区二区| 欧美无人高清视频在线观看| 日韩在线观看一区二区| 日韩一区二区视频| 狠狠狠色丁香婷婷综合激情| 国产无人区一区二区三区| 99久久久免费精品国产一区二区| 亚洲啪啪综合av一区二区三区| 在线亚洲+欧美+日本专区| 午夜不卡在线视频| 欧美大胆人体bbbb| 国产成人av电影| 中文字幕一区二区不卡| 91久久精品国产91性色tv| 午夜精品爽啪视频| 欧美刺激午夜性久久久久久久| 国产精品亚洲第一| **网站欧美大片在线观看| 欧美私模裸体表演在线观看| 免费观看成人鲁鲁鲁鲁鲁视频| 久久网这里都是精品| 波多野结衣91| 婷婷激情综合网| 久久蜜桃av一区精品变态类天堂| av不卡免费电影| 午夜日韩在线电影| 久久久久99精品国产片| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 3atv一区二区三区| 黑人精品欧美一区二区蜜桃| 中文文精品字幕一区二区| 色偷偷成人一区二区三区91| 热久久免费视频| 中文字幕精品—区二区四季| 欧美亚洲综合在线| 韩国女主播成人在线| 亚洲女同ⅹxx女同tv| 91精品国产综合久久久久久| 国产露脸91国语对白| 亚洲精品福利视频网站| 日韩欧美一级片| www.亚洲国产| 奇米影视在线99精品| 中文字幕一区免费在线观看| 欧美高清dvd| 丁香婷婷深情五月亚洲| 亚洲成人精品影院| 国产欧美一区在线| 欧美精品久久一区二区三区| 国产福利一区二区三区视频在线| 一区二区三区精品在线| 精品国产乱码久久久久久蜜臀| 色综合久久中文字幕| 久久精品久久精品| 亚洲精品国产第一综合99久久| 日韩欧美一二三区| 一本大道久久a久久精品综合| 另类的小说在线视频另类成人小视频在线| 中文在线一区二区| 欧美一区二区美女| 色悠悠亚洲一区二区| 韩国毛片一区二区三区| 亚洲国产精品精华液网站| 欧美激情一区二区三区在线| 91精选在线观看| 91影院在线观看| 国产最新精品免费| 五月婷婷欧美视频| 综合色中文字幕| 久久久久综合网| 制服视频三区第一页精品| 91视频免费播放| 国产成人午夜片在线观看高清观看| 天堂久久久久va久久久久| 国产精品嫩草久久久久| 精品欧美久久久| 欧美精选午夜久久久乱码6080| 99精品视频一区二区三区| 国产一区二区三区久久久| 爽好久久久欧美精品| 亚洲激情综合网| 国产精品免费视频一区| 久久久亚洲综合| 欧美一区二区免费视频| 欧美唯美清纯偷拍| av综合在线播放| 国产成人综合在线| 精品一区二区三区久久久| 日日嗨av一区二区三区四区| 一区二区三区不卡在线观看 | 久久精品国产99国产| 午夜成人免费电影| 一区二区三区四区蜜桃| 亚洲欧洲精品一区二区精品久久久| 久久蜜桃一区二区| 26uuu精品一区二区在线观看| 日韩一区二区三区在线观看| 欧美日韩1区2区| 在线免费观看日本欧美| 99久精品国产| 91在线精品一区二区| 成人18视频日本| 国产精品影视在线| 国产福利不卡视频| 国产乱码精品一区二区三区av| 久久国产剧场电影| 久久精品国产精品亚洲精品| 另类小说一区二区三区| 看电影不卡的网站| 国内外成人在线视频| 久久99精品久久只有精品| 久久精品72免费观看| 狂野欧美性猛交blacked| 免费成人你懂的| 久久精工是国产品牌吗| 精品影视av免费| 国模套图日韩精品一区二区| 精品一区二区精品| 国产精品资源网| 丁香天五香天堂综合| 国产成人精品一区二区三区四区 | 97精品国产露脸对白| eeuss鲁片一区二区三区在线看| 福利电影一区二区| 成人丝袜视频网| av亚洲精华国产精华精华| 91在线看国产| 国产色婷婷亚洲99精品小说| 精品国产三级电影在线观看| 2017欧美狠狠色| 国产亚洲综合在线| 国产精品素人视频| 亚洲同性同志一二三专区| 精品少妇一区二区三区| 精品久久久久久久久久久院品网 | 国产欧美精品一区| 久久亚洲二区三区| 日本一区二区三区视频视频| 亚洲欧洲制服丝袜| 视频一区二区国产| 国产一区欧美一区| 成人小视频免费观看|