HKPS 首塊RISC-V開發板規格

Back
Category : Home

MCU : CH32V203

CH32V203系列是基於32位元RISC-V核心設計的工業級增強型通用微控制器,高效能,最高支援144MHz系統主頻,運作功耗低至49.3uA/MHz。機等豐富的周邊資源,同時提供TSSOP20、QFN28、QFN48X7、LQFP32、LQFP48等多種封裝供客戶彈性選擇。

系統模組

  • 青稞V4B,最高144MHz系統主頻
  • 支援單週期乘法和硬體除法
  • 20KB靜態RAM,64KB快閃記憶體
  • 供電電壓:2.5/3.3V,GPIO單元獨立供電
  • 摘要模式:睡眠、停止、待機
  • 運轉模式低至49.3uA/MHz
  • 睡眠模式低至19.4uA/MHz
  • 上/下電重設、可程式電壓監測器
  • 1組8路通用DMA控制器
  • 2組試驗器
  • 10頻道12位元ADC轉換,10路觸控按鍵TouchKey
  • 4 小組
  • 1個USB2.0全速主機/設備接口
  • 1個USB2.0全速設備接口
  • 4個串口
  • 1個CAN介面(2.0B主動)
  • 2組IIC介面、2組SPI接口
  • 37個I/O口,可以贏得16外部中斷
  • CRC運算單元,96位元晶片唯一ID
  • 串行2線調試接口
  • 封裝形式:TSSOP20、QFN28、QFN48X7、LQFP32、LQFP48

開發資料

1、資料手冊:CH32V203DS0.PDFCH32FV2x_V3xRM.PDF
2、CH32V203評估板說明及參考應用範例:CH32V20xEVT.ZIP
3、整合開發環境(IDE):MounRiver Studio(MRS)

相關資料

https://www.wch.cn/products/CH32V203.html

實驗代碼

/********************************** (C) COPYRIGHT *******************************
 * File Name          : main.c
 * Author             : WCH
 * Version            : V1.0.0
 * Date               : 2021/06/06
 * Description        : Main program body.
 *********************************************************************************
 * Copyright (c) 2021 Nanjing Qinheng Microelectronics Co., Ltd.
 * Attention: This software (modified or not) and binary are used for 
 * microcontroller manufactured by Nanjing Qinheng Microelectronics.
 *******************************************************************************/

/*
 *@Note
 *USART Print debugging routine:
 *USART1_Tx(PA9).
 *This example demonstrates using USART1(PA9) as a print debug port output.
 *
 */

#include "debug.h"

/* Global typedef */

/* Global define */

/* Global Variable */

//=========== External function ====================
//==================================================

void GPIO_Toggle_INIT(void)
{
    GPIO_InitTypeDef GPIO_InitStructure = {0};

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOB, &GPIO_InitStructure);
}

/*********************************************************************
 * @fn      main
 *
 * @brief   Main program.
 *
 * @return  none
 */
int main(void)
{
    NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
    SystemCoreClockUpdate();
    Delay_Init();
    USART_Printf_Init(115200);
    printf("SystemClk:%d\r\n", SystemCoreClock);
    printf( "ChipID:%08x\r\n", DBGMCU_GetCHIPID() );
    printf("This is printf example\r\n");

    GPIO_Toggle_INIT();


    while(1)
    {
        GPIO_WriteBit(GPIOB, GPIO_Pin_9, Bit_RESET);
        Delay_Ms(250);
        GPIO_WriteBit(GPIOB, GPIO_Pin_9, Bit_SET);
        Delay_Ms(250);
    }
}

GitHub 宣布了一系列針對 Copilot 的更新,同時也讓人們看到了其人工智慧配對程式設計師更具代理性的未來。

值得注意的更新包括一項名為 Vision for Copilot 的功能,該功能允許用戶在聊天中附加螢幕截圖、照片或圖表,然後 Copilot 會產生介面、程式碼和替代文字以使其栩栩如生。

例如,行銷團隊中的某個人可以截取網頁的螢幕截圖並說明他們希望對該頁面所做的某些更改。現在,無需透過文字提示來請求此類更改,只需上傳圖像並要求 Copilot 按照文件中指示的執行更改即可。

值得注意的是,該功能自 10 月起就作為 VS Code 的擴展提供,微軟在應用程式描述中確認,它最終將被棄用,轉而採用 GitHub Copilot Chat 中的原生功能。以前,它還要求用戶擁有自己的 API 金鑰。

作為 Copilot 更廣泛的程式碼完成功能的一部分,GitHub 還推出了一項名為「下一次編輯建議」的新功能。

在此之前,VS Code 編輯器中的 GitHub Copilot 從遊標位置開始工作,但現在它會查看其他最近的編輯來預測您接下來可能想要做什麼。它基本上使用更豐富的上下文線索來自動識別並建議下一步的編輯應該是什麼。

如果開發人員想要接受建議,他們可以按 Tab 鍵或按 Esc 鍵拒絕。

GitHub Copilot的未來

GitHub 也在去年 11 月推出了 Copilot Edits,這是一種使用自然語言提示進行多文件編輯的新方法。此功能現已逐步普及,同時還包含一種新的“代理模式”,可識別與開發人員試圖進行的更改相關的所有文件 – 而不是依靠它們手動選擇應用更改的文件。

GitHub 執行長 Thomas Dohmke 告訴 TechCrunch:“Copilot 現在會做更多的工作來弄清楚你最初請求的目的,然後嘗試解決這個問題。”長遠目標是將這種「代理模式」應用於 Copilot 的其他方面,從而實現更廣泛的相互關聯任務的更高程度的自動化。這就是為什麼 GitHub 還推出了一項名為 Project Padawan 的新計劃,它本質上是一個 SWE(軟體工程)代理,可以在將問題分配給 Copilot 的開發人員的指導下獨立處理整個任務。

Dohmke 並未透露該劇何時能上映,只表示將與合作夥伴和社區一起努力完善該劇。

「我們正在尋找合作夥伴,他們同樣是建築代理,能夠融入這個流程中,也希望客戶能夠與我們合作並給我們反饋——因為我們知道現階段還不夠完美,」Dohmke 說。

https://techcrunch.com/2025/02/06/github-copilot-brings-mockups-to-life-by-generating-code-from-images/?fbclid=IwY2xjawIVToRleHRuA2FlbQIxMAABHZVl5BqoFGp1XnZIsvxsrL8OIwFVtDnXzBwFKhSRF-G9qakbCfY4wHWk1Q_aem_36c2XguOYjD3U_py7Cdngg&guccounter=1&guce_referrer=aHR0cHM6Ly9sLmZhY2Vib29rLmNvbS8&guce_referrer_sig=AQAAAK07OlZFzl6SAJfEkfytsVBHzVz_ycb8yYz3_kRg7WK6EUshXaHh8gQ9d4nXvX4qCOG1-hk3S3Wk3TUHLYz8jpsa6VfXNjppTZXr5KxvrcTxQQs5W7R-GsokANXkdpa9L9tYpJlwS8Hcn45O4yWaTZW6rHZNxgOSMS9iRPmImugQ

第一步:安裝Ollama

Ollama 是一個開放原始碼的工具,旨在簡化和加速在本地運行大型語言模型(LLM)的過程。它提供了一個簡單的命令行介面,使用戶能夠輕鬆下載、運行和管理各種預訓練的語言模型。Ollama 使開發者和研究人員能夠在自己的設備上運行這些模型,而不需要依賴雲端服務。到這裏下載https://ollama.com/download . 完成之後,打開dos prompt輸入ollama –version證明安裝成功。

第二步: 下載Deepseek

# Fast, lightweight  
ollama pull deepseek-r1:8b 

# Balanced performance  
ollama pull deepseek-r1:14b

# Heavy processing
ollama pull deepseek-r1:32b   

# Max reasoning, slowest
ollama pull deepseek-r1:70b  

下戴完成輸入ollama list檢查

第三步本機運行Deepseek

輸入ollama run deepseek-r1:8b,然後輸入你的問題,它就會出答案,輸入/bye離開。

如果電腦沒有GPU會跑得比較慢,最好有一張nVidia顯咭,輸入ollama ps可以檢查有否GPU

第四步寫program整合

Ollama是自帶http接口的,打開browser瀏覽http://localhost:11434/證明成功

跑以下python就可以連接上

import pycurl
from io import BytesIO
response_buffer = BytesIO()

c = pycurl.Curl()
c.setopt(c.URL, 'http://localhost:11434/api/generate')
c.setopt(c.POST, 1);
c.setopt(c.WRITEDATA, response_buffer)
c.setopt(c.HTTPHEADER, ['Content-Type: application/json','Accept-Charset: UTF-8'])
c.setopt(c.POSTFIELDS, """{
  "model": "deepseek-r1:8b",
  "prompt": "how many peter in hong kong",
  "stream": false
}""")
c.perform()
c.close()
response_data = response_buffer.getvalue().decode('utf-8')
print(response_data)

編程學會所開發之NewBlock現已支持Micro-python及一眾uPython底板包括ESP32及Raspberry Pi。以下是支援的Sensors。

雙色LED模組實驗
七彩LED燈閃爍
WS2812 RGB LED
傾斜開關
振動傳感器
模擬温度傳感器
火焰警報傳感器
PS2操縱杆
TM163四位數碼管
RIP人體熱釋電感應
RGB-LED傳感器
蜂鳴器
激光傳感器
干簧傳感器
光敏傳感器
輕觸開關
電位器
U型光電傳感器
繼電器
雨滴探測器
模擬霍爾傳感器
DS18B20温度傳感器
觸摸開關傳感器
旋轉編碼器
聲音傳感器
煙霧傳感器
超聲波傳感器
步進馬達
角度舵機
BMP280氣壓傳感器
DS1302實時時鐘
DTH11温濕度傳感器
I2C LCD
SSD1306 OLED
MFRC522 RFID射頻卡
MPU6050陀螺儀加速度傳感器
紅外避障傳感器
紅外循迹傳感器
紅外控制接收器
土壤濕度傳感器

感激生產力局及千禧獅子會支持,Java 52堂免費課程已經上到第28堂了,本次教學實驗證明小學生及年青人有能力學習更高水平之編程技術,只要教學得堂,他們是非常容易就掌握到現代編程語言之寫作方法。

參加了 ESF COCO 2024 ,為學生介紹OOP編程技巧。在這次英基ESF COCO 2024活動中,我深刻體會到了編程學習的魅力和力量。這是一個了解最新技術、交流學習經驗和結識志同道合朋友的絕佳機會。

首先,活動中多場專題講座讓我獲益良多。專家們分享了關於人工智能、數據科學和網絡安全的最新趨勢,這些內容不僅拓寬了我的視野,也激發了我對未來學習的熱情。聽到行業領袖們的經驗分享,讓我對未來的職業規劃有了更清晰的方向。

其次,工作坊的設計非常實用,讓我能夠親手實踐所學知識。在與其他參加者的合作中,我學會了如何在團隊中有效溝通和協作,這對我的編程能力提升非常重要。透過實際操作,我也發現了自己在編程方面的不足,並激發了我進一步學習的動力。

最後,與來自各地的參與者交流,讓我感受到編程社群的包容性和活力。大家都對技術充滿熱情,分享著各自的故事和挑戰,這樣的氛圍讓我更加堅定了繼續追求編程的決心。

總結來說,英基ESF COCO 2024不僅增強了學生的編程技能,也讓學生更加了解這個快速變化的領域。我期待將來能再次參加這樣的活動,持續學習和成長。

Netbeans output不能顯示中文字, 因為它選擇了只可顯示英文的字體。解決方法如下,在output window中right click然後點Setting,再選一隻可以出到中文的字體

https://mydigimag.rrd.com/publication/?i=823180&article_id=4789385&view=articleBrowser

於3 月23 日,香港千禧獅子會於柴灣的香港高 等教育科技學院與香港編程學會一起合辦了 首屆千禧創科教育日暨全港編程大賽,當日超過 80 位不同年齡和界別的參賽者參與,並有不同的 科技業界和義工們協助,令今次比賽生色不少。是次編程比賽除了得到香港高科院支持外,更獲得 由上屆總監冼健岷獅兄創辦的獅子會創科基金支 援。今次比賽發起人– 獅子會科技小組的張民傑獅 兄,同時也是本會前會長,眼見香港創科界比人落 後,所以本身作為科技顧問公司創辦人的他就身體 力行,落區為缺乏資源的小學生和中學生們免費教 授編程班, 累積已超過 了2 0 0 小時 的課堂, 落 力為本港培 育創科人 才。而今次 的編程比賽 除了讓各年 齡層的編程 人才切磋交 流, 更可以 向社會賢達 們推廣香港 本土創科的重要性,而這正正也是配合國家帶動的 六大未來產業發展。比賽分為小學、中學和公開組,當中不乏資深的編 程好手,也有國際學校學生、內地精英和業界人 士。當下午比賽正式開始時,大家都聚精會神地分 析題目,再以最快的時間透過編程解答問題。比賽 雖長3 小時,但因為5 條題目都經過精心設計,所 以大家都需要扭盡六壬才能逐一解答,最後以最快 和最準確解答的選手獲勝。得到編程學會和科技商 界贊助,今次比賽的獎品也十分豐富,但更難忘的 是見到小學生們都十分認真參與,有因獲獎而歡笑 也有因落敗而落淚的小朋友,可見大家都十分認真 對待比賽,也是本會和各合辦機構繼續推動全港編 程比賽的動力!