搜索
bottom↓
回复: 69

我基本不会C,一知半解,也要弄STM32.

  [复制链接]

出0入34汤圆

发表于 2018-3-22 12:08:34 | 显示全部楼层 |阅读模式
本帖最后由 epwwm 于 2018-3-22 14:52 编辑

基本没用过C语言,只会用PIC汇编,最近没办法了,都是被现在满天的彩屏搞的,不是不要用STM32,看了下STM32的PDF,我靠比PIC复杂多了,还好有STM32CubeMX和github.com弄了一周,一知半解的居然也把一个屏点亮了。。。

但基本没的查错能力,还得继续看C的基础。。。

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

发表于 2018-3-22 12:17:47 | 显示全部楼层
楼主不容易啊,不会也能点亮,不错了,呵呵,顶一下。

出0入0汤圆

发表于 2018-3-22 12:21:51 | 显示全部楼层
楼主高手啊

出0入0汤圆

发表于 2018-3-22 12:41:02 | 显示全部楼层
鼓励一下,长途慢慢,确定要上车?

出0入0汤圆

发表于 2018-3-22 12:44:30 | 显示全部楼层
撸主撸一周就有这个效果不错哦

出100入85汤圆

发表于 2018-3-22 13:08:42 | 显示全部楼层
说明楼主资质不错,可以继续入坑

出0入0汤圆

发表于 2018-3-22 13:09:58 | 显示全部楼层
懂汇编的话学C不在话下

出0入4汤圆

发表于 2018-3-22 13:15:01 | 显示全部楼层
我正打算学汇编呢    楼主 在哪里  求带

出0入33汤圆

发表于 2018-3-22 13:24:43 | 显示全部楼层
懂汇编学C应该没难度

出0入0汤圆

发表于 2018-3-22 14:09:22 | 显示全部楼层
C肯定是要搞的。。。楼主还需要努力啊!!!

出0入0汤圆

发表于 2018-3-22 14:09:35 | 显示全部楼层
点彩屏不一定非得STM32,用STC的51照样也可以

出0入0汤圆

发表于 2018-3-22 14:18:16 | 显示全部楼层
高手,膜拜一下!

出0入0汤圆

发表于 2018-3-22 14:24:44 | 显示全部楼层
理解错误了,我以为楼主再说自己的基友不会C还要搞STM32呢,进来一看原来说自己。。。。

出0入34汤圆

 楼主| 发表于 2018-3-22 14:48:51 | 显示全部楼层
看来赞多于弹,不过STM32确实够复杂,看着眼都花了,就算有现成的C,我也看得一头雾水,很多语句根本连意思都搞不懂,修饰符也一堆不明白的,更补指针搞得发昏。。。

出0入34汤圆

 楼主| 发表于 2018-3-22 14:54:51 | 显示全部楼层
zhongsandaoren 发表于 2018-3-22 12:41
鼓励一下,长途慢慢,确定要上车?

被迫的,不跟潮流用STM32不行了。。。

出0入34汤圆

 楼主| 发表于 2018-3-22 14:56:10 | 显示全部楼层
modbus 发表于 2018-3-22 14:09
点彩屏不一定非得STM32,用STC的51照样也可以

确实也是,之前玩了一下arduino AVR 的8位机也一样驱动,只是驱动就驱动了,空间没了一大半,也做不了什么了。。

出0入4汤圆

发表于 2018-3-22 14:58:18 | 显示全部楼层
STM32基本都有现成的库,初始化,底层操作,以及对时间要求不严苛的位置都直接用库了,比直接操作寄存器的PIC简单。其它应用层的编程基本都一样,和用什么单片机关系不大。楼主感觉难的应该是C,熟能生巧。

出0入0汤圆

发表于 2018-3-22 15:16:46 | 显示全部楼层
汇编才难,不信用PIC汇编写个64位浮点除法
                                                                           

出50入10汤圆

发表于 2018-3-22 15:29:37 | 显示全部楼层
本帖最后由 our2008 于 2018-3-22 15:31 编辑

汇编熟的话,建议直接用寄存器,学习c的几个基本语句if for switch  ....就可以了!
工程就一个头文件加个启动文件就行。
避免被一大堆库定义搞的昏头转向!且以后不会被库套死在一种片子上!

出0入0汤圆

发表于 2018-3-22 16:26:32 | 显示全部楼层
汇编大神阿

出0入34汤圆

 楼主| 发表于 2018-3-22 16:40:24 | 显示全部楼层

神个屁,PIC才2,30条指令,简单得很,反而C我看得一头雾水。。。

出0入0汤圆

发表于 2018-3-22 16:51:08 来自手机 | 显示全部楼层
汇编一直用,51 AVR PIC  还有早期的96,虽然用顺了,写起大点的程序也费神

出0入50汤圆

发表于 2018-3-22 17:01:14 | 显示全部楼层
我跟楼主差不多,除了加减乘除,就会个if else和switch,case了

出0入34汤圆

 楼主| 发表于 2018-3-22 17:11:53 | 显示全部楼层
本帖最后由 epwwm 于 2018-3-22 17:14 编辑
ilikemcu 发表于 2018-3-22 17:01
我跟楼主差不多,除了加减乘除,就会个if else和switch,case了


我被C的定义,宏定义,一堆修饰符,回调,指针,等等一堆名词搞得眼花,理解都成问题,更不要说会使用了

还有一堆目录,一堆的.h文件 ,一堆的通用库函数,有时不同版本又有不同的差别,更是一片混乱。。

出0入34汤圆

 楼主| 发表于 2018-3-22 17:13:09 | 显示全部楼层

这也叫高手?真是吹捧了

出0入0汤圆

发表于 2018-3-22 17:22:03 | 显示全部楼层
epwwm 发表于 2018-3-22 16:40
神个屁,PIC才2,30条指令,简单得很,反而C我看得一头雾水。。。

可以试试用汇编撸撸STM32 ,可能比PIC还简单,至少不用考虑多字节运算了

出0入34汤圆

 楼主| 发表于 2018-3-22 17:45:20 | 显示全部楼层
modbus 发表于 2018-3-22 17:22
可以试试用汇编撸撸STM32 ,可能比PIC还简单,至少不用考虑多字节运算了 ...

那基本是不可能任务,光寄存器名字和各配置位的名字,就搞死你了。。

出0入0汤圆

发表于 2018-3-22 23:52:24 来自手机 | 显示全部楼层
以前有一本在英华人写的M3的书,里面全部都是针对M3内核的汇编范例,对了解内核很有帮助,好像本坛还出过STM32 上跑的汇编框架程序。

出0入4汤圆

发表于 2018-3-23 00:24:44 | 显示全部楼层
C基础还是要学的,

出0入54汤圆

发表于 2018-3-23 08:18:29 | 显示全部楼层
有时候就是这样,上个月 别人寄来个winCE6.0的屏幕,要里面编程序控制以前我给他做的继电器板子
还就给3天
说是机器上的安装孔已经挖好了,非这个屏幕别的不能用
硬着头皮下载安装 VS2016 好不容易和谐 结果说不支持wince
后来说是VS2005  然后卸了再装不能用
最后折腾VS2008好像是能用
然后看例子 试着用VB.NET居然也弄成了

出0入0汤圆

发表于 2018-3-23 09:13:30 来自手机 | 显示全部楼层
楼主,你能熟练使用汇编,用C肯定不在话下

出0入0汤圆

发表于 2018-3-23 09:17:32 | 显示全部楼层
modbus 发表于 2018-3-22 17:22
可以试试用汇编撸撸STM32 ,可能比PIC还简单,至少不用考虑多字节运算了 ...

兄弟你太逗了

出0入0汤圆

发表于 2018-3-23 09:20:34 | 显示全部楼层
楼主悟性高,放在以前那就是一夜练就神功的人物了

出0入34汤圆

 楼主| 发表于 2018-3-23 10:09:16 | 显示全部楼层
STM32CubeMX对于我等新手确实是个好东西和arduino有得比了,起码也基本不用看细看PDF就能做事,要不然新手肯定被那复杂的寄存器弄昏了。。。

另外github.com开源的天堂,可以找到很多有用的源码参考,稍加修改就可以用了。。。。

出0入0汤圆

发表于 2018-3-23 10:16:14 | 显示全部楼层
懂汇编的都是高手;

出0入0汤圆

发表于 2018-3-23 10:42:46 | 显示全部楼层
不管干什么,折腾多了,起码也能成半个专家。

出0入0汤圆

发表于 2018-3-23 11:40:25 | 显示全部楼层
凡是用汇编码代码的,我都会给他敬个礼

出0入34汤圆

发表于 2018-3-23 12:00:03 | 显示全部楼层
看来楼主貌似没此工作上的压力。
楼主若接获单位指派一个只能用 C 写的案子,几天内立马就成高手了!哈~

出0入0汤圆

发表于 2018-3-23 12:31:36 | 显示全部楼层
C语言啊  看的头大   
昨天调了一天串口通信,想把采集的一个十六进制转换成十进制的数在转换成字符串再通过串口传给python的测试脚本,死活转不过来,今天天继续啃。。。。

出0入0汤圆

发表于 2018-3-23 12:38:18 | 显示全部楼层
当年刚参加工作时候用89s52,用汇编写了个3M左右的测试程序,现在想想,头都大

出30入54汤圆

发表于 2018-3-23 13:52:28 | 显示全部楼层
plb83 发表于 2018-3-23 12:38
当年刚参加工作时候用89s52,用汇编写了个3M左右的测试程序,现在想想,头都大 ...

窝草,52代码搞了3M,这么大?厉害了

出0入0汤圆

发表于 2018-3-23 14:16:45 | 显示全部楼层
我常用汇编,所以写C的时候也是很爽
有些C语句,大概都能猜到编译后是什么样的

出0入0汤圆

发表于 2018-3-23 14:34:25 | 显示全部楼层
cloudboy 发表于 2018-3-23 13:52
窝草,52代码搞了3M,这么大?厉害了

楼上说的应该是3K吧,呵呵。52能装下3M程序?

出0入34汤圆

 楼主| 发表于 2018-3-23 14:54:51 | 显示全部楼层
csq463276932 发表于 2018-3-23 14:34
楼上说的应该是3K吧,呵呵。52能装下3M程序?

他指文本是3M吧,不过3M文本编译后也不小了,也得有几十K吧。。

出0入0汤圆

发表于 2018-3-23 14:58:13 | 显示全部楼层
epwwm 发表于 2018-3-23 14:54
他指文本是3M吧,不过3M文本编译后也不小了,也得有几十K吧。。

52也装不下几十K 的代码。

出0入12汤圆

发表于 2018-3-23 15:05:19 | 显示全部楼层
有时把=写成:= ,想想不对,默默的去掉:;有时直接{},想想不对,默默的写上begin  end。就是这么悲催。

出0入30汤圆

发表于 2018-3-23 15:34:56 | 显示全部楼层
our2008 发表于 2018-3-22 15:29
汇编熟的话,建议直接用寄存器,学习c的几个基本语句if for switch  ....就可以了!
工程就一个头文件加个 ...


经验之谈,感谢分享
现在我也还是用汇编
也打算学C,
其实M系列,主要还是16位指令多,用汇编不也防
有些复杂的程序还是要用C,但不用库最好

出0入0汤圆

发表于 2018-3-23 15:37:45 | 显示全部楼层

鼓励一下!

出0入0汤圆

发表于 2018-3-23 16:03:57 | 显示全部楼层
懂汇编的学STM32还是有优势的,想怎么修改启动代码就怎么修改
不过STM32的汇编跟PIC的汇编差距也确实有点大

出0入34汤圆

 楼主| 发表于 2018-3-23 16:16:24 | 显示全部楼层
lw32 发表于 2018-3-23 16:03
懂汇编的学STM32还是有优势的,想怎么修改启动代码就怎么修改
不过STM32的汇编跟PIC的汇编差距也确实有点大 ...

差别不是一般大,所以基本相当于STM32汇编也不是会的。。

出0入0汤圆

发表于 2018-3-23 16:32:59 | 显示全部楼层
epwwm 发表于 2018-3-23 16:16
差别不是一般大,所以基本相当于STM32汇编也不是会的。。

汇编转过来的建议直接操作寄存器,只用标准库的头文件,里面有寄存器的定义,不用C文件
这样编程思想跟汇编比较接近,STM32CubeMX用的库太啰嗦了,不直观
不过新的STM32没有标准库了,都是hal库

出30入54汤圆

发表于 2018-3-23 17:10:36 | 显示全部楼层
csq463276932 发表于 2018-3-23 14:34
楼上说的应该是3K吧,呵呵。52能装下3M程序?

理论上讲,扩展总线应该也就16位总线,好像就算外扩也不能寻址到M级别的。不过51好像有3个字节的指针,不知道哪里用的,前阵子看别人的51汇编代码(没办法,客户提供的只有汇编,还各种删减),各种头大,尤其是51和C对接的时候的参数传递问题,各种规则,简直令人发指。

出0入0汤圆

发表于 2018-3-23 18:17:56 | 显示全部楼层
本帖最后由 3DA502 于 2018-3-23 18:29 编辑

自通8051的汇编的路过,入门只花了一周吧,上课时候偷偷看地摊上找到的单片机教材,苦于买不到芯片,我把汇编机器码做成表挂墙上,背机器码YY

后来转型到C语言的过程极其痛苦,回想起来,若是有人带会好很多

有时候想想自己在电子技术上砸的时间,都快赶上睡觉时间的数量级了,而且睡觉还经常梦到 JZ DEC ACC,小聪明天赋的真相真是太可怕了

出0入10汤圆

发表于 2018-3-23 19:56:26 | 显示全部楼层
这个也能中奖, 恭喜了

出0入0汤圆

发表于 2018-3-23 22:23:17 | 显示全部楼层
cloudboy 发表于 2018-3-23 13:52
窝草,52代码搞了3M,这么大?厉害了

哈哈,单位搞错,是K

出140入8汤圆

发表于 2018-3-24 04:52:44 | 显示全部楼层
我就静静的看着你们装逼,带我飞啊…

出0入4汤圆

发表于 2018-3-24 16:42:59 | 显示全部楼层
好的开始能增强信心

出0入21汤圆

发表于 2018-3-24 20:13:38 | 显示全部楼层
想当年是拿了别人的钱给逼上学c的

出0入0汤圆

发表于 2018-3-27 15:58:51 | 显示全部楼层
楼主你好 NB ,语言抽象程度越高,实现功能多的话就越不易掌控。C 在单片机上肯定是优选。

出0入0汤圆

发表于 2018-3-27 16:01:32 | 显示全部楼层
其实大家都是从不会开始的,你这个效率已经不低了。

出0入34汤圆

 楼主| 发表于 2018-3-27 16:34:35 | 显示全部楼层
效率高不是我的原因,主要是有了STM32CubeMX,用了HAL库,和在github中找了Ucglib驱动。。。。

然后这几天有空又在github找了MultiButton ,按键也弄出来了,然后我居然还没弄明白什么叫事件驱动,,,现在还被函数的参数中的 * , &  搞得晕了头,根本还不明白是怎么一回事,只是照样画虎用上而已。。。

因为习惯了汇编,因为汇编的运行一切尽在我掌控中,出错了我有信心找出来,对于这个SMT32糊里糊涂运行起来,我真是担心万一出错,真是无从查找。。。

出0入0汤圆

发表于 2018-3-27 16:46:38 | 显示全部楼层
epwwm 发表于 2018-3-27 16:34
效率高不是我的原因,主要是有了STM32CubeMX,用了HAL库,和在github中找了Ucglib驱动。。。。

然后这几天 ...

我也是从汇编一路走过来的,现在再也不想回到汇编。

出0入0汤圆

发表于 2018-3-27 18:51:46 | 显示全部楼层
其实用汇编编程在防破解方面还是很有效的,我以前用51的汇编编过一个程序,用各种反汇编程序反汇编出来都几乎全是表格数据,想分析程序难度相当大

出0入0汤圆

发表于 2018-3-29 08:42:27 | 显示全部楼层
果然是绝顶聪明啊

出0入0汤圆

发表于 2018-3-29 09:29:19 | 显示全部楼层
多学学,多用用,就会了

出0入0汤圆

发表于 2018-3-29 10:15:30 | 显示全部楼层
epwwm 发表于 2018-3-27 16:34
效率高不是我的原因,主要是有了STM32CubeMX,用了HAL库,和在github中找了Ucglib驱动。。。。

然后这几天 ...

其实闲时可以找本C基础的书看看,不过现代人真是很少人能安心看书了。

出0入8汤圆

发表于 2018-3-29 23:55:14 来自手机 | 显示全部楼层
牛逼啊,,,,,

出150入640汤圆

发表于 2018-3-30 09:40:39 | 显示全部楼层
十几种编程语言,只要有互联网,半小时搞出"hello world!"
十几种单片机,只要有互联网,半小时点亮LED (GPIO控制)
此所谓手中无剑,心中无剑也

出0入0汤圆

发表于 2018-3-30 11:48:04 | 显示全部楼层
现在网上学习资料多了,只要脑子灵,很快入门
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-17 17:46

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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