矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 10808|回复: 141

试用不到1元的PY32单片机

[复制链接]
     
发表于 2023-4-15 01:27:41 | 显示全部楼层 |阅读模式
本帖最后由 yjmwxwx 于 2023-4-15 01:29 编辑

后悔啊,有50-20的优惠券结果没买最便宜的没用成这个优惠券 ,用优惠券的话才4毛一片


截图_2023-04-15_01-27-11.png




照例先来个最简单的点个灯,LED接在PA0口


mpv-shot0003.jpg

mpv-shot0002.jpg

程序

  1.         .thumb
  2.         .syntax unified
  3. vectors:
  4.         .word zhanding
  5.         .word kaishi + 1
  6.         .equ zhanding, 0x20001000

  7. kaishi:
  8. __kai_pa_shi_zhong:       
  9.         ldr r0, = 0x40021034
  10.         movs r1, # 1
  11.         str r1, [r0]
  12. __pa_she_zhi:       
  13.         ldr r0, = 0x50000000
  14.         ldr r1, = 0xebfffffD
  15.         str r1, [r0]

  16. ting:
  17.         movs r1, # 1
  18. __led_kai:       
  19.         str r1, [r0, # 0x18]
  20.         ldr r2, = 0xfffff
  21. __led_kai_yanshi:
  22.         subs r2, r2, # 1
  23.         bne __led_kai_yanshi
  24. __led_guan:       
  25.         str r1, [r0, # 0x28]
  26.         ldr r2, = 0xfffff
  27. __led_guan_yanshi:
  28.         subs r2, r2, # 1
  29.         bne __led_guan_yanshi
  30.         b ting
复制代码


led.zip (3.24 KB, 下载次数: 22)

视频


评分

3

查看全部评分

     
 楼主| 发表于 2023-4-16 17:35:03 | 显示全部楼层
onesword 发表于 2023-4-16 16:05
说反了吧。汇编远比C复杂。不到万不得已,不会用汇编。即使用汇编,也是写个函数给其他人调用

你要理解我们不会英文,比如我配置个外部振荡器时钟,看官方C程序看的我头大根本看不懂

截图_2023-04-16_17-30-33.png


上面就是官方C程序,让我们不懂英文的怎么看啊,乱糟糟的根本看不懂。只能自己看手册慢慢摸索试验,下面我写的多简单,最起码让人不眼花

  1. shizhong:
  2.         ldr r2, = 0x40022000   @FLASH访问控制
  3.         movs r1, # 0
  4.         str r1, [r2]          @0:flash没等待,1:flash等待
  5.         ldr r0, = 0x40021000 @ rcc
  6.         ldr r1, = 0x20008
  7.         str r1, [r0, # 0x10]    @外部晶振选择
  8.         ldr r1, [r0]
  9.         ldr r2, = 0x10000
  10.         orrs r1, r1, r2
  11.         str r1, [r0]            @开外部振荡器
  12. denghse:
  13.         ldr r1, [r0]
  14.         lsls r1, r1, # 14
  15.         bpl denghse             @等外部振荡器

  16.         ldr r1, = 0x01
  17.         str r1, [r0, # 0x0c]    @PLL配置
  18.         ldr r2, [r0]
  19.         ldr r1, = 0x1000000
  20.         orrs r1, r1, r2
  21.         str r1, [r0]            @开PLL

  22. dengpll:
  23.         ldr r1, [r0]
  24.         lsls r1, # 6
  25.         bpl dengpll             @等PLL
  26.         movs r1, # 0x02
  27.         str r1, [r0, # 0x08]    @选择系统时钟
复制代码
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-17 12:48:09 | 显示全部楼层
7毛的单片机带DMA,内存4K 哈哈真是划算

ADC采集出数据了,看着还可以,两个100欧电阻分压

程序
adc.zip (12.66 KB, 下载次数: 53)

这价格这ADC还可以啊

截图_2023-04-17_12-31-00.png
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-17 15:25:26 | 显示全部楼层
chason4752 发表于 2023-4-17 14:44
看了本帖的讨论,是不是可以这样理解:对于单片机这种最简单的嵌入式系统(CPU、内存、外围接口驱动都嵌 ...

搞单片机小制作程序很小,不算数组也就不到10K,这么简单的程序还要分很多文件很多库太麻烦了,我最近看这个单片机官方程序一看就头大,本身很简单东西让他们搞的那么复杂
回复 支持 1 反对 1

使用道具 举报

     
 楼主| 发表于 2023-4-15 17:21:32 | 显示全部楼层
箫音 发表于 2023-4-15 17:07
汇编没那么难,而且遇到结果不对还比较容易排除,走单步核对寄存器或存贮器内的数值就可以了
C语言也没 ...

搞单片机的感觉还是汇编简单,我搞的都是一些简单小制作用汇编足够了,C语言那么复杂看着就劝退了

评分

1

查看全部评分

回复 支持 1 反对 0

使用道具 举报

     
发表于 2023-4-15 06:37:51 | 显示全部楼层
汇编码有点难
回复 支持 反对

使用道具 举报

     
发表于 2023-4-15 07:08:25 | 显示全部楼层
性价比简直是到了天花板!楼主造诣匪浅,能够用汇编语言编程的,不简单!能不能用它做个嵌入式小时钟之类?
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-15 08:29:48 | 显示全部楼层

汇编比C容易入门,一共没几条指令,安装个ARM-NONE-EABI编译器就能学了
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-15 08:36:05 | 显示全部楼层
chason4752 发表于 2023-4-15 07:08
性价比简直是到了天花板!楼主造诣匪浅,能够用汇编语言编程的,不简单!能不能用它做个嵌入式小时钟之类? ...

32位单片机要是用优惠券才0.44元一片,真的是太划算了,个人玩玩搞一般小制作足够了。其实汇编更容易入门,一共没几条指令,C语言我不懂英文学起来麻烦,做个小时钟肯定没问题
回复 支持 反对

使用道具 举报

     
发表于 2023-4-15 08:41:50 | 显示全部楼层
曾经还买了本汇编的书 现在都找不到了
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-15 08:54:25 | 显示全部楼层
3195884 发表于 2023-4-15 08:41
曾经还买了本汇编的书 现在都找不到了

不看书也行,常用指令也就几条,就是得经常翻芯片参考手册
回复 支持 反对

使用道具 举报

     
发表于 2023-4-15 09:34:01 | 显示全部楼层
yjmwxwx 发表于 2023-4-15 08:36
32位单片机要是用优惠券才0.44元一片,真的是太划算了,个人玩玩搞一般小制作足够了。其实汇编更容易入门 ...

您能够驾轻就熟的掌握汇编语言,实力不俗。实际是越简单指令越少的语言,它面临的对象应用编程就越复杂,高级语言是为了减少这种复杂性才设计的。举个简单的例子:英语共26个罗马字母,汇编语言就好比是只会写这26个罗马字;再高级点如C语言之类,就会用它来拼单词;更高级的就能够用单词组成短句;进一步的就可以使用语法来构成句子;最高级的就可以运用自如的用它来写诗、写辩护状、写论文之类了。

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

     
发表于 2023-4-15 10:02:15 | 显示全部楼层
RISC-V 有没有这个价格的?玩新的就玩开源的吧
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-15 10:31:07 | 显示全部楼层
chason4752 发表于 2023-4-15 09:34
您能够驾轻就熟的掌握汇编语言,实力不俗。实际是越简单指令越少的语言,它面临的对象应用编程就越复杂, ...

您说的对,汇编写个简单的还行,复杂的写起来就麻烦了
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-15 10:33:54 | 显示全部楼层
无实无虚 发表于 2023-4-15 10:02
RISC-V 有没有这个价格的?玩新的就玩开源的吧

应该有吧,就是不知道外设资源多不多,个人玩肯定选熟悉而且便宜的,不想花钱是试错不熟悉的了
回复 支持 反对

使用道具 举报

     
发表于 2023-4-15 10:45:21 | 显示全部楼层
以前就听说用汇编写个CRC校验程序要写几大篇,用C语言几十行就搞定了,反正感觉没得哪个去学汇编了
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-4-15 11:37:44 | 显示全部楼层
兰贵烦 发表于 2023-4-15 10:45
以前就听说用汇编写个CRC校验程序要写几大篇,用C语言几十行就搞定了,反正感觉没得哪个去学汇编了

汇编只能写个简单东西,好处是对于我们不会英语的比较容易入门
回复 支持 反对

使用道具 举报

     
发表于 2023-4-15 12:47:28 | 显示全部楼层
yjmwxwx 发表于 2023-4-15 10:31
您说的对,汇编写个简单的还行,复杂的写起来就麻烦了

其实英语并没有那么难,尤其是计算机语言,面非常窄,它不像你和别人交流时说的口语那样随机,甚至比书面语的语法还简单。咱们念的不好听没关系,只要记住那些专用英文单词就可以了。但难的是你还需要对你要面对的编程或应用有较深刻的理解,弄清它们之间的逻辑关系,选择合适的逻辑公式,才能最后完成一个对象的需要(类似一套工艺流程)。
回复 支持 反对

使用道具 举报

     
发表于 2023-4-15 13:15:54 | 显示全部楼层
汇编语言虽然指令少,但应用比较困难,比如排序,高级语言肯呢个就是一个命令,汇编语言要写一大段。越是高级的语言,越接近人们的语言逻辑。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2024-5-8 23:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表