离线
TA的每日心情 飞起 2022-10-5 00:04
签到天数: 2 天
[LV.1]
有人预言,RISC-V或将是继Intel和Arm之后的第三大主流处理器体系。欢迎访问全球首家只专注于RISC-V单片机行业应用的中文网站
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
【MicroPython玩转RISC-V MCU从0到1】 篇二
MicroPython进行RISC-V duino DUE board板子上的全部引脚输出0或1操作!
MicroPython只需要两条指令就能为RISC-V MCU点一盏灯!
C语言可是需要十几条指令才能点亮一盏灯啊!
PS: RISC-Vduino DUE board 板子,频率144MHz,包括:
除此之外,还可以包括I2C,SPI,TIMER(PWM/PTO),DAC,USART/UART,CAN,USB,ETHERNET等高级外设接口,做大点物联网控制类项目够用了!
【示例程序1】 :MicroPython进行RISC-V MCU的打印Hello World!
<font face="Tahoma" size="3" color="#000000">>>> print("Hello World")
Hello World</font> 复制代码 Putty 输入Micropython指令打印Hello World
【示例程序2】 :MicroPython进行RISC-V MCU的打印Hello RISC-V!
<font face="Tahoma" size="3" color="#000000">>>> print("Hello RISC-V")
Hello RISC-V
</font> 复制代码 Putty 输入Micropython指令打印Hello RISC-V
【示例程序3】 :MicroPython进行RISC-V MCU的GPIO输出操作!
Blink点亮 LED!
RISC-Vduino DUE Board 上的【ANALOG IN 】A1-->PA1==GPIOA1
<font face="Tahoma" size="3" color="#000000">>>> from machine import Pin
>>> pa1=Pin(Pin.board.PA1,Pin.OUT)
>>> pa1.on()
</font> 复制代码
实验效果如图:
Putty 输入Micropython指令点亮一个LED
RISC-Vduino DUE Board 引脚PA1连接的LED灯点亮
(如果想关闭LED,请跳转到文章末尾看【示例程序4】)
RISC-Vduino DUE Board 上的【 ANALOG IN 】 A0 -->PA0==GPIOA0
>>> from machine import Pin
>>> pa0=Pin(Pin.board.PA0,Pin.OUT)
>>> pa0.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A2 -->PA2==GPIOA2
>>> from machine import Pin
>>> pa2=Pin(Pin.board.PA2,Pin.OUT)
>>> pa2.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A3 -->PA3==GPIOA3(DAC1)
>>> from machine import Pin
>>> pa3=Pin(Pin.board.PA3,Pin.OUT)
>>> pa3.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A4 -->PA4==GPIOA4(DAC2)
>>> pa4=Pin(Pin.board.PA4,Pin.OUT)
>>> pa4.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A5 -->PA5==GPIOA5
>>> pa5=Pin(Pin.board.PA5,Pin.OUT)
>>> pa5.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A6 -->PA6==GPIOA6
>>> pa6=Pin(Pin.board.PA6,Pin.OUT)
>>> pa6.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A7 -->PA7==GPIOA7
>>> pa7=Pin(Pin.board.PA7,Pin.OUT)
>>> pa7.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A8 -->PB0==GPIOB0
>>> pb0=Pin(Pin.board.PB0,Pin.OUT)
>>> pb0.on()
复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A9 -->PB1==GPIOB1
>>> pb1=Pin(Pin.board.PB1,Pin.OUT)
>>> pb1.on()
复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A10 -->PC0==GPIOC0
>>> pc0=Pin(Pin.board.PC0,Pin.OUT)
>>> pc0.on()
复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A11 -->PC1==GPIOC1
>>> pc1=Pin(Pin.board.PC1,Pin.OUT)
>>> pc1.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A12 -->PC2==GPIOC2
>>> pc2=Pin(Pin.board.PC2,Pin.OUT)
>>> pc2.on() 复制代码
RISC-Vduino DUE Board 上的【 ANALOG IN 】 A13 -->PC3==GPIOC3
>>> pc3=Pin(Pin.board.PC3,Pin.OUT)
>>> pc3.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A14 -->PC4==GPIOC4
>>> pc4=Pin(Pin.board.PC4,Pin.OUT)
>>> pc4.on() 复制代码 RISC-Vduino DUE Board 上的【 ANALOG IN 】 A15 -->PC5==GPIOC5
>>> pc5=Pin(Pin.board.PC5,Pin.OUT)
>>> pc5.on() 复制代码
RISC-Vduino DUE Board 上的【 DIGITAL 】 D0 -->PA10==GPIOA10
RISC-Vduino DUE Board 上的【 DIGITAL 】 D1 -->PA9==GPIOA9
RISC-Vduino DUE Board 上的【 DIGITAL 】 D2 -->PB4==GPIOB4
<font face="Tahoma" size="3" color="#000000">>>> pb4=Pin(Pin.board.PB4,Pin.OUT)
>>> pb4.on()
</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D3 -->PB5==GPIOB5
<font face="Tahoma" size="3" color="#000000">>>> pb5=Pin(Pin.board.PB5,Pin.OUT)
>>> pb5.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D4 -->PB6==GPIOB6
<font face="Tahoma" size="3" color="#000000">>>> pb6=Pin(Pin.board.PB6,Pin.OUT)
>>> pb6.on()
</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D5 -->PB7==GPIOB7
<font face="Tahoma" size="3" color="#000000">>>> pb7=Pin(Pin.board.PB7,Pin.OUT)
>>> pb7.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D6 -->PB8==GPIOB8
<font face="Tahoma" size="3" color="#000000">>>> pb8=Pin(Pin.board.PB8,Pin.OUT)
>>> pb8.on()
</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D7 -->PB9==GPIOB9
<font face="Tahoma" size="3" color="#000000">>>> pb9=Pin(Pin.board.PB9,Pin.OUT)
>>> pb9.on()
</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D8 -->PA15==GPIOA15
<font face="Tahoma" size="3" color="#000000">>>> pa15=Pin(Pin.board.PA15,Pin.OUT)
>>> pa15.on()
</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D9 -->PB3==GPIOB3
<font face="Tahoma" size="3" color="#000000">>>> pb3=Pin(Pin.board.PB3,Pin.OUT)
>>> pb3.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D10 -->PB12==GPIOB12
<font face="Tahoma" size="3" color="#000000">>>> pb12=Pin(Pin.board.PB12,Pin.OUT)
>>> pb12.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D11 -->PB15==GPIOB15
<font face="Tahoma" size="3" color="#000000">>>> pb15=Pin(Pin.board.PB15,Pin.OUT)
>>> pb15.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D12 -->PB14==GPIOB14
<font face="Tahoma" size="3" color="#000000">>>> pb14=Pin(Pin.board.PB14,Pin.OUT)
>>> pb14.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D13 -->PB13==GPIOB13
<font face="Tahoma" size="3" color="#000000">>>> pb13=Pin(Pin.board.PB13,Pin.OUT)
>>> pb13.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D14 -->PC10==GPIOC10(TX3)
<font face="Tahoma" size="3" color="#000000">>>> pc10=Pin(Pin.board.PC10,Pin.OUT)
>>> pc10.on()
</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D15 -->PC11==GPIOC11(RX3)
<font face="Tahoma" size="3" color="#000000">>>> pc11=Pin(Pin.board.PC11,Pin.OUT)
>>> pc11.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D16 -->PD8==GPIOD8(TX2)
<font face="Tahoma" size="3" color="#000000">>>> pd8=Pin(Pin.board.PD8,Pin.OUT)
>>> pd8.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D17 -->PD9==GPIOD9(RX2)
<font face="Tahoma" size="3" color="#000000">>>> pd9=Pin(Pin.board.PD9,Pin.OUT)
>>> pd9.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D18 -->PA12==GPIOA12(CANTX)
<font face="Tahoma" size="3" color="#000000">>>> pa12=Pin(Pin.board.PA12,Pin.OUT)
>>> pa12.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D19 -->PA11==GPIOA11(CANRX)
<font face="Tahoma" size="3" color="#000000">>>> pa11=Pin(Pin.board.PA11,Pin.OUT)
>>> pa11.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D20 -->PB11==GPIOB11(SDA)
<font face="Tahoma" size="3" color="#000000">>>> pb11=Pin(Pin.board.PB11,Pin.OUT)
>>> pb11.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 COMMUNICATION 】 D21 -->PB10==GPIOB10(SCL)
<font face="Tahoma" size="3" color="#000000">>>> pb10=Pin(Pin.board.Pb10,Pin.OUT)
>>> pb10.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D22 -->PC9==GPIOC9
<font face="Tahoma" size="3" color="#000000">>>> pc9=Pin(Pin.board.PC9,Pin.OUT)
>>> pc9.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D23 -->PC8==GPIOC8
<font face="Tahoma" size="3" color="#000000">>>> pc8=Pin(Pin.board.PC8,Pin.OUT)
>>> pc8.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D24 -->PC7==GPIOC7
<font face="Tahoma" size="3" color="#000000">>>> pc7=Pin(Pin.board.PC7,Pin.OUT)
>>> pc7.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D25 -->PC6==GPIOC6
<font face="Tahoma" size="3" color="#000000">>>> pc6=Pin(Pin.board.PC6,Pin.OUT)
>>> pc6.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D26 -->PD10==GPIOD10
<font face="Tahoma" size="3" color="#000000">>>> pd10=Pin(Pin.board.PD10,Pin.OUT)
>>> pd10.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D27 -->PD11==GPIOD11
<font face="Tahoma" size="3" color="#000000">>>> pd11=Pin(Pin.board.PD11,Pin.OUT)
>>> pd11.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D28 -->PD12==GPIOD12
<font face="Tahoma" size="3" color="#000000">>>> pd12=Pin(Pin.board.PD12,Pin.OUT)
>>> pd12.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D29 -->PD13==GPIOD13
<font face="Tahoma" size="3" color="#000000">>>> pd13=Pin(Pin.board.PD13,Pin.OUT)
>>> pd13.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D30 -->PD14==GPIOD14
<font face="Tahoma" size="3" color="#000000">>>> pd14=Pin(Pin.board.PD14,Pin.OUT)
>>> pd14.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D31 -->PD15==GPIOD15 <font face="Tahoma" size="3" color="#000000">>>> pd15=Pin(Pin.board.PD15,Pin.OUT)
>>> pd15.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D32 -->PD0==GPIOD0
<font face="Tahoma" size="3" color="#000000">>>> pd0=Pin(Pin.board.PD0,Pin.OUT)
>>> pd0.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D33 -->PD1==GPIOD1
<font face="Tahoma" size="3" color="#000000">>>> pd1=Pin(Pin.board.PD1,Pin.OUT)
>>> pd1.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D34 -->PD2==GPIOD2
<font face="Tahoma" size="3" color="#000000">>>> pd2=Pin(Pin.board.PD2,Pin.OUT)
>>> pd2.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D35 -->PD3==GPIOD3
<font face="Tahoma" size="3" color="#000000">>>> pd3=Pin(Pin.board.PD3,Pin.OUT)
>>> pd3.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D36 -->PD4==GPIOD4
<font face="Tahoma" size="3" color="#000000">>>> pd4=Pin(Pin.board.PD4,Pin.OUT)
>>> pd4.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D37 -->PD5==GPIOD5
<font face="Tahoma" size="3" color="#000000">>>> pd5=Pin(Pin.board.PD5,Pin.OUT)
>>> pd5.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D38 -->PD6==GPIOD6
<font face="Tahoma" size="3" color="#000000">>>> pd6=Pin(Pin.board.PD6,Pin.OUT)
>>> pd6.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D39 -->PD7==GPIOD7
<font face="Tahoma" size="3" color="#000000">>>> pd7=Pin(Pin.board.PD7,Pin.OUT)
>>> pd7.off()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D40 -->PE2==GPIOE2
<font face="Tahoma" size="3" color="#000000">>>> pe2=Pin(Pin.board.PE2,Pin.OUT)
>>> pe2.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D41 -->PE3==GPIOE3
<font face="Tahoma" size="3" color="#000000">>>> pe3=Pin(Pin.board.PE3,Pin.OUT)
>>> pe3.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D42 -->PE4==GPIOE4
<font face="Tahoma" size="3" color="#000000">>>> pe4=Pin(Pin.board.PE4,Pin.OUT)
>>> pe4.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D43 -->PE5==GPIOE5
<font face="Tahoma" size="3" color="#000000">>>> pe5=Pin(Pin.board.PE5,Pin.OUT)
>>> pe5.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D44 -->PE6==GPIOE6
<font face="Tahoma" size="3" color="#000000">>>> pe6=Pin(Pin.board.PE6,Pin.OUT)
>>> pe6.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D45 -->PE15==GPIOE15
<font face="Tahoma" size="3" color="#000000">>>> pe15=Pin(Pin.board.PE15,Pin.OUT)
>>> pe15.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D46 -->PE14==GPIOE14
<font face="Tahoma" size="3" color="#000000">>>> pe14=Pin(Pin.board.PE14,Pin.OUT)
>>> pe14.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D47 -->PE13==GPIOE13
<font face="Tahoma" size="3" color="#000000">>>> pe13=Pin(Pin.board.PE13,Pin.OUT)
>>> pe13.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D48 -->PE12==GPIOE12
<font face="Tahoma" size="3" color="#000000">>>> pe12=Pin(Pin.board.PE12,Pin.OUT)
>>> pe12.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D49 -->PE11==GPIOE11
<font face="Tahoma" size="3" color="#000000">>>> pe11=Pin(Pin.board.PE11,Pin.OUT)
>>> pe11.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D50 -->PE10==GPIOE10
<font face="Tahoma" size="3" color="#000000">>>> pe10=Pin(Pin.board.PE10,Pin.OUT)
>>> pe10.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D51 -->PE9==GPIOE9
<font face="Tahoma" size="3" color="#000000">>>> pe9=Pin(Pin.board.PE9,Pin.OUT)
>>> pe9.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D52 -->PE8==GPIOE8
<font face="Tahoma" size="3" color="#000000">>>> pe8=Pin(Pin.board.PE8,Pin.OUT)
>>> pe8.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D53 -->PE7==GPIOE7
<font face="Tahoma" size="3" color="#000000">>>> pe7=Pin(Pin.board.PE7,Pin.OUT)
>>> pe7.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D54 -->PE0==GPIOE0 <font face="Tahoma" size="3" color="#000000">>>> pe0=Pin(Pin.board.PE0,Pin.OUT)
>>> pe0.on()</font> 复制代码 RISC-Vduino DUE Board 上的【 DIGITAL 】 D55 -->PE1==GPIOE1
<font face="Tahoma" size="3" color="#000000">>>> pe1=Pin(Pin.board.PE1,Pin.OUT)
>>> pe1.on()</font> 复制代码
【示例程序4】 :Blink关闭 LED(RISC-Vduino DUE Board 上的PA1-GPIOA1)!
<font face="Tahoma" size="3" color="#000000">>>> from machine import Pin
>>> pa1=Pin(Pin.board.PA1,Pin.OUT)
>>> pa1.off()</font> 复制代码 Putty 输入Micropython指令关闭一个LED
RISC-Vduino DUE Board 引脚PA1连接的LED灯关闭
A0~A15,D0~D55关闭程序程序如【示例3】所示,
只要将pxx.on()改成pxx.off(),即可!
接下来【篇三】进行MicroPython RISC-V MCU模拟量传感器信息读取演示,
欢迎关注!
完
RISCV作者优文