hellohello22 发表于 2021-3-1 15:58

本帖最后由 hellohello22 于 2021-3-1 16:22 编辑

10块出头的串口也不走I2C协议

屏的驱动我自己写的, 一点不难, 底层驱动,乐趣无穷




cyradg 发表于 2021-3-1 16:04

Arduino的第一个应用问题:不知道怎么选MCU,也就是针对哪种MCU开发的,只能选哪种Arduino开发板。但是肯定是能选针对哪种MCU开发,否则没意义。{:5_589:}

cyradg 发表于 2021-3-1 16:08

hellohello22 发表于 2021-3-1 15:58
10块出头的串口也不走I2C协议

屏的驱动我自己写的, 一点不难, 底层驱动,乐趣无穷


I2C协议的器件好多都不到1元钱,玩玩而已,不要较真。{:5_589:}

cyradg 发表于 2021-3-1 20:25

我这个LCD12864要短接JP1就是完全亮灯,隐约有些背景,对比度算没问题了,但是还是不显示。{:5_604:}Arduino的代码编辑器太弱了,现在正在研究ATMEL Studio 7的Arduino插件,Amtel Studio 7的代码编辑器超级好,不想舍弃。

cyradg 发表于 2021-3-1 20:57

Atmel Studio 7+Arduino比单独使用Arduino爽!,弥补了Arduion的代码编辑器很菜的缺点

chenghelin 发表于 2021-3-1 21:06

STM32玩过IIC,SPI,8080,RGB屏,不同的屏不一样的驱动IC初始化代码都不一样,感觉你这个只是背光点亮了,还没通信,不可能显示的

cyradg 发表于 2021-3-1 21:52

chenghelin 发表于 2021-3-1 21:06
STM32玩过IIC,SPI,8080,RGB屏,不同的屏不一样的驱动IC初始化代码都不一样,感觉你这个只是背光点亮了, ...

可能代码有问题。另外,Arduino的库虽然很多,但是感觉好像离硬件真的又远了点,比如pinMode(13,OUTPUT)这个语句,意思是让MCU的13脚作为输出脚,但是我觉得这样移植代码反而不方便。因为每个MCU的第13脚不一定是IO口或者适合做IO口。我觉得还不如Atmel Studio 7里面那样定义方便:#define DATADDRDDRB.....,DATADDR|=(1<<4),这样的代码更容易移植,一般一组IO就是8个脚,我用了这组IO口里的第5个脚,不同的MCU,改变一下DATADDR的定义,就表明不同的一组IO口,其他代码基本可以不用改。另外,Arduino平台目前我找到的是针对Arduino自己家的开发板的代码,而不是针对特定的MCU,比如,我想找ATTINY44,Arduino里就不知道怎么找这款MCU,所以我有些怀疑一些特定功能只能在他家开发板上工作,移植会出问题。感觉Arduino像是学习单片如何工作的,而不是针对不同的单片如何去开发的,先放下Arduion吧,感觉Arduino离硬件太远了些,先继续Atmel Studio 7。

hellohello22 发表于 2021-3-1 22:43

cyradg 发表于 2021-3-1 21:52
可能代码有问题。另外,Arduino的库虽然很多,但是感觉好像离硬件真的又远了点,比如pinMode(13,OUTPUT) ...
玩了stm32, 这些都不值一提{:5_604:}, 特别中断和DMA, 强大的飞起

cyradg 发表于 2021-3-2 06:56

本帖最后由 cyradg 于 2021-3-2 06:57 编辑

hellohello22 发表于 2021-3-1 22:43
玩了stm32, 这些都不值一提, 特别中断和DMA, 强大的飞起
我手头有的成品玩意,Atmel还是比较少的,STM多点,PIC也相对少点。我说过,我手头只有AVR开发板,我也知道,我在帖子里也早说过,AVR似乎过时了,因为我找到的代码,好多是STM32的,我也说过也只是玩玩而已,不想再花钱买个STM32的开发板,也不想去做什么产品,也没有在这炫耀Atmel的MCU有多强大,我只是说Atmel的代码编辑器管理我觉得一级棒!至少比Arduino强。

hfshen 发表于 2021-3-2 08:08

cyradg 发表于 2021-3-1 14:31
我目前也是想用Arduino,支持类,可以很好地封装成对象,Proteus的例子也是Arduino。呆伙我试用下。当初 ...

看到语句中有 GOTO,就不禁想起大学里学计算机语言时,老师严禁使用goto语句(虽然各种语言都有goto语句,而且使用很方便),说考试时谁使用谁不及格。

hellohello22 发表于 2021-3-2 09:21

hfshen 发表于 2021-3-2 08:08
看到语句中有 GOTO,就不禁想起大学里学计算机语言时,老师严禁使用goto语句(虽然各种语言都有goto语句 ...

妖魔化goto, 这个语句既然造出来,说明有其用处, 而不是当成洪水猛兽, 不分青红皂白地抵制是很蠢的, 实际上linux内核里都有不少的goto

正确使用goto语句,能简化程序,提高效率,尤其在函数内部

goto 对应的汇编是无条件跳转, 按你的说法, 汇编就不应该设计无条件跳转的指令?

cyradg 发表于 2021-3-2 10:24

本帖最后由 cyradg 于 2021-3-2 10:32 编辑

hfshen 发表于 2021-3-2 08:08
看到语句中有 GOTO,就不禁想起大学里学计算机语言时,老师严禁使用goto语句(虽然各种语言都有goto语句 ...
我也很少去goto,能不用就不用。用goto不建议多,多了就会乱。我一般就用一个,而且基本就在最末尾。仅仅就是为了少写点代码而已。
goto在汇编层次其实是很多的,在应用层的确较少。应用层开发,讲究模块化,流程化,也就是一个流程从头走到底,不要跳来跳去,容易循环死掉,用goto,goto标识一般也是放在最末尾,而且在标识之前就要出现返回语句,比如return,exit之类的。如果goto标识放在流程中间,就不太好理顺了,代码没写好跳着跳着估计就死掉了,应用层的goto语句其实是建议做成一个私有函数来处理的,只是Atmel Studio 7没有什么所谓私有函数之类的概念,所以只好goto了,就是为了少写点函数(代码)而已。

cyradg 发表于 2021-3-2 13:31

hfshen 发表于 2021-3-2 08:08
看到语句中有 GOTO,就不禁想起大学里学计算机语言时,老师严禁使用goto语句(虽然各种语言都有goto语句 ...

总算选用上了C++,可以用 class来封装成对象了,代码可以更规整些。在大飞的开发环境中,凡是goto语句都要被警告,但是还是会被编译通过,但是我这次在Atmel STUDIO 7中使用C++的class类函数里,直接给咱报错说:放肆的使用了goto,编译不通过,真霸道。{:5_589:}

hellohello22 发表于 2021-3-2 15:05

cyradg 发表于 2021-3-2 13:31
总算选用上了C++,可以用 class来封装成对象了,代码可以更规整些。在大飞的开发环境中,凡是goto语句都 ...

底层这么搞, 效率低的要死, 不用C都是扯淡(汇编高手除外)
页: 1 [2]
查看完整版本: 请问蓝色LCD12864显示全白是什么情况?