色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【RTT大賽作品連載】CH32V RTT微秒延時的實現

煲仔鹵煮的煉鋼 ? 來源:煲仔鹵煮的煉鋼 ? 作者:煲仔鹵煮的煉鋼 ? 2021-11-29 08:30 ? 次閱讀

CH32V103是沁恒出的一款基于RiscV核心的單片機,在官網有該芯片資料、庫函數和例程,另外沁恒還開發了一款IDE:MounRiver Studio。里面也提供了不少的例程可以參考,其中就有帶rt-thread操作系統的例程,雖然只有一個LED的,但聊勝于無,畢竟rt-thread的bsp中還沒有支持到這個芯片。

所以我就基于led功能進行了新功能的開發,但發現其中bsp這塊確實匱乏,只有gpio和uart的drv實現,其他的都還沒做移植,也罷,那我就!!

先不用其他了。。iic spi之類的直接用庫函數來操作了。什么?你說移植下不就好了?

對啊,但是打工人沒時間啊。。哎

會到本帖主題,在調試IIC的時候我發現總是卡在busy,初始化之后就開始總線繁忙,怎么也越不過去了。。。雖然我知道這不一定是像STM32那樣的硬件故障導致的,但是卡的我還是選擇了軟件仿真iic,結果直接就能讀到數據了。。。

嗯,本帖也不是講IIC的,是在過程中我發現沒有微妙延時啊,drv_common也沒有移植過來。。。所以rt_hw_us_delay()這個光有聲明沒有實現。。

于是我參考drv_common中的實現方法,實現了個

void rt_hw_us_delay(rt_uint32_t us)
{
    rt_uint32_t start, now, delta, reload, us_tick;
    start = SysTick->VAL;
    reload = SysTick->LOAD;
    us_tick = SystemCoreClock / 1000000UL;
    do {
        now = SysTick->VAL;
        delta = start > now ? start - now : reload + start - now;
    } while(delta < us_tick * us);
}

因為CH32V103的systick寄存器定義和st的有些差異,因此這里我就直接取值定義了兩個宏,在CH32V103的手冊中有描述,系統計數器低位/高位寄存器可以通過8位/16位/32位來讀取,但只能8位來寫入。

poYBAGGjWSmATYs7AAFbSXibDH4796.png

反正也只是讀取數據,就無所謂了。

#define SysTick_VAL          ((UINT32 *) 0xE000F004)
#define SysTick_LOAD         ((UINT32 *) 0xE000F00C)
void rt_hw_us_delay(rt_uint32_t us)
{
    rt_uint32_t start, now, delta, reload, us_tick;
    start = *SysTick_VAL;
    reload = *SysTick_LOAD;
    us_tick = SystemCoreClock / 1000000UL;
    do {
        now = *SysTick_VAL;
        delta = start > now ? start - now : reload + start - now;
    } while(delta < us_tick * us);
}

這段函數定義在board.c中,這樣就不用聲明,直接可以用了。

這樣我的模擬iic速度就起來了。

“為啥不移植下drv_common.c?”

“因為我懶。。”

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6037

    文章

    44560

    瀏覽量

    635537
  • RTT
    RTT
    +關注

    關注

    0

    文章

    65

    瀏覽量

    17145
  • RT-Thread
    +關注

    關注

    31

    文章

    1290

    瀏覽量

    40161
  • RISC-V
    +關注

    關注

    45

    文章

    2283

    瀏覽量

    46177
  • ch32
    +關注

    關注

    0

    文章

    73

    瀏覽量

    656
收藏 人收藏

    評論

    相關推薦

    RTT大賽作品連載】AB32VG1評估板到貨控制彩燈測試

    RTT大賽作品連載】AB32VG1評估板到貨控制彩燈測試篇;接下來看看在如何AB32VG1評估板控制彩燈! 在RT-ThreadStudio新建項目到對應開發配置及下載及驗證測試!
    的頭像 發表于 11-07 19:39 ?5207次閱讀
    【<b class='flag-5'>RTT</b><b class='flag-5'>大賽</b><b class='flag-5'>作品</b><b class='flag-5'>連載</b>】AB32VG1評估板到貨控制彩燈測試

    RTT大賽作品連載CH32V103開發板資料及上電首測

    簡介 ? 參加論壇舉辦的rtt大賽也有幾天了,我選用的是CH32V103的板子,第一步就是收集板卡的相關資料了。 CH32V103是 沁恒微電子設計的一款RSIC-
    的頭像 發表于 11-15 08:45 ?8673次閱讀
    【<b class='flag-5'>RTT</b><b class='flag-5'>大賽</b><b class='flag-5'>作品</b><b class='flag-5'>連載</b>】<b class='flag-5'>CH32V</b>103開發板資料及上電首測

    RTT大賽作品連載】AB32VG1評估板 音樂播放器

    RTT大賽作品連載】AB32VG1評估板 音樂播放器
    的頭像 發表于 11-12 21:11 ?6236次閱讀
    【<b class='flag-5'>RTT</b><b class='flag-5'>大賽</b><b class='flag-5'>作品</b><b class='flag-5'>連載</b>】AB32VG1評估板 音樂播放器

    RTT大賽作品連載】中科藍訊AB32VG1開發板開箱篇

    介紹電路原理圖分析接口說明,AB32VG1開發板是以中科藍訊(Bluetrum)公司推出的基于RISC-V架構的高配置芯片AB5301A為核心所組成的。【RTT大賽作品
    的頭像 發表于 11-13 10:01 ?1w次閱讀
    【<b class='flag-5'>RTT</b><b class='flag-5'>大賽</b><b class='flag-5'>作品</b><b class='flag-5'>連載</b>】中科藍訊AB32VG1開發板開箱篇

    RTT大賽作品連載CH32V103 USBHID鍵盤鼠標

    基于CH32V103實現了USB HID的鍵盤鼠標功能,提供寫好的代碼文件,歡迎fork。
    的頭像 發表于 11-29 08:49 ?7976次閱讀

    RTT大賽作品連載】 PWM操作蜂鳴器

    使用AB32VG1的PWM來操作無源蜂鳴器,能夠輸出頻率為1KHz到20KHz的聲音。
    的頭像 發表于 12-06 08:36 ?9676次閱讀
    【<b class='flag-5'>RTT</b><b class='flag-5'>大賽</b><b class='flag-5'>作品</b><b class='flag-5'>連載</b>】 PWM操作蜂鳴器

    RTT大賽作品連載】 OLED顯示中文

    使用AB32VG1操作OLED顯示文字信息,包括漢字取模方式介紹,漢字顯示函數編寫.
    的頭像 發表于 12-06 09:25 ?8966次閱讀
    【<b class='flag-5'>RTT</b><b class='flag-5'>大賽</b><b class='flag-5'>作品</b><b class='flag-5'>連載</b>】 OLED顯示中文

    【文章連載】RT-Thread創新應用大賽文章匯總

    連載】中科藍訊AB32VG1開發板開箱篇專欄作者:煲仔鹵煮的煉鋼【RTT大賽作品連載CH32V
    發表于 10-11 15:13

    【有獎活動】RT-Thread創新應用大賽作品連載征文

    禮品:https://jifen.elecfans.com/index.html?文章標題格式:【RTT大賽作品連載】+自擬內容?文章作品
    發表于 10-21 18:49

    【二等獎】RT-Thread創新應用設計大賽作品1

    ,于是研究了下并寫了【RTT大賽作品連載CH32V RTT
    發表于 01-25 11:49

    RTT Studio ch32v307的堆內存最大化

    看看ch32v的各個段是怎么分配的,不熟悉鏈接腳本的盆友可以先看這個,這個文章講的挺好,RISC-V MCU CH32V307 ld鏈接腳本說明點開Link.ld(RTT Studio
    發表于 02-07 11:55

    華大單片機HC32L136+RTT踩坑(官方延時函數)

    問題:移植完RTT后運行正常,加入ADC測量后卡死在空閑線程。原因:華大單片機官方庫中含有延時函數,延時函數使用滴答定時器實現。在ADC使用中必需開啟BGR模塊(功能沒看懂),開啟過程
    發表于 11-23 17:21 ?13次下載
    華大單片機HC32L136+<b class='flag-5'>RTT</b>踩坑(官方<b class='flag-5'>延時</b>函數)

    MM32F013x——RTT使用技巧

    SEGGER的實時傳輸(Real Time Transfer, RTT)是嵌入式應用中用戶I/O交互的一種新技術。J-Link RTT Viewer是在調試主機上使用RTT功能的Win...
    發表于 01-25 18:34 ?4次下載
    MM32F013x——<b class='flag-5'>RTT</b>使用技巧

    RTT是什么?對TCP中RTT時延的理解

    最近服務器環境部署了**tcprtt**網絡時延監控,發現不同服務器不同節點之間的RTT時延表象非常奇怪,無法準確的判斷服務器的網絡情況。
    的頭像 發表于 10-09 16:24 ?4.1w次閱讀
    <b class='flag-5'>RTT</b>是什么?對TCP中<b class='flag-5'>RTT</b>時延的理解

    RTT_Draco的外置uart接口(TXD,RXD)怎么配置和使用呢?

    RTT_Draco的外置uart接口(TXD,RXD)怎么配置和使用呢? RT-Thread的RTT_Draco是一款高性能的MCU芯片,它提供了外置UART接口(TXD,RXD)用于與外部設備進行
    的頭像 發表于 01-16 17:11 ?1071次閱讀
    主站蜘蛛池模板: 免费国产在线观看| 亚洲视频第二页| 亚洲黄色高清| 伊人久久中文字幕久久cm| 99久久久无码国产精品免费人妻 | 一本久道久久综合狠狠躁AV | 国产精品青青青高清在线密亚| 国产免费麻传媒精品国产AV| 老头操美女| 亚欧洲乱码视频一二三区| 4480yy午夜私人影院| 国产99青草全福视在线| 精品淑女少妇AV久久免费| 欧美日韩综合一区| 亚洲精品黄色| 动漫美女被吸奶| 男女XX00上下抽搐动态图| 特级做A爰片毛片免费69| 99久久国内精品成人免费| 果冻传媒在线观看网站| 欧美日韩国产码在线| 夜夜澡人人爽人人喊_欧美| 国产Av影片麻豆精品传媒| 蜜臀AV色欲A片无码一区| 无码免费视频AAAAAA片草莓| ABO成结顶腔锁住| 女人高潮了拔出来了她什么感觉| 四虎成人影院| 王雨纯羞羞| 一级毛片视频免费| 91se在线看片国产免费观看| 97亚洲狠狠色综合久久久久| 多人乱肉高hnp| 国产成人免费a在线资源| 国产91网站在线观看免费| 国产精品麻豆a啊在线观看| 国产精品美女WWW爽爽爽视频| 精品伊人久久久| 男人吃奶摸下弄进去好爽| 神马影院午夜理论二| 亚洲成a人片777777久久|