一乐电子

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 10981|回复: 22

[其他综合] 关于bascom

  [复制链接]
发表于 2010-9-16 18:09 | 显示全部楼层 |阅读模式
玩电子垃圾多年,最近几年越来越感觉到单片机好玩,可是读了几本不同的单片机书籍,还是只能停留在抄例程演示点LED流水灯的水平上,很想自己用单片机做一些自己需要的实用的小制作,无奈c编程还是一点都找不到头绪。前几年就在网上看到了关于bascom 8051编程语言的介绍(bascom AVR不感兴趣,因为我在本地的旧货市场上收了很多51芯片,足够我玩的了,不想再花钱去买别的芯片,再说51芯片不是最经典的么?),20年前读大学时学过bascom,虽然现在都忘了,但还记得这个编程语言还是要比c容易多了,因此想学习这个语言,可是在网上一番搜索,却又拿不定主意了。一是这个语言的资料实在太少,bascom AVR的还有点,bascom 8051的几乎没有,那么在碰到问题时想找资料或找高手请教都不可能了;二是在一些论坛看到很多人极力反对入门者去学习bascom(如ouravr论坛),都一致建议要从c学起,但可怜我看了几本书,却觉得什么也看不懂,不知道本论坛有没有兄弟在用bascom的?或者有没有像我这样级别的菜鸟儿又迫切的想学习单片机的?大家都来发表一下看法吧,当然,如果有高手愿意成立一个学习小组帮助我等菜鸟就更好了。
发表于 2010-9-16 18:20 | 显示全部楼层
BASIC简单是简单,但操作硬件可能效率不高吧,你可能需要准备大容量的51.{:3_472:}
回复

使用道具 举报

发表于 2010-9-17 18:59 | 显示全部楼层
BASIC我只是听说过,一直没学过~~
回复

使用道具 举报

发表于 2010-9-17 21:06 | 显示全部楼层
计算机我原来基本不会.
什么basic,c都没学过,
上大学学的FORTRAN,上机是IBM4381的终端.

为了学单片机逼着从C开始了,
主要是汇编我觉得更难.

也没人可以请教,只能在网上瞎找资料.
现在刚入门,可以基本完成我自己的想法.
但是程序效率很低,好在现在单片机都很便宜,
最简单的程序我也用60K的51做.

你可以考虑先看看十天学会单片机那一系列视频.

关键是你想要做什么,有想法了,再在别人现成的程序上改改.
然后组合下就可以用了.

我就是这样做的,学习的过程就是用别人的程序,改改,下载,不行,再改改.反复改,反复下载,直到好使了
回复

使用道具 举报

发表于 2010-9-18 01:50 | 显示全部楼层
我觉得还是从汇编开始比较好..
然后在使用C语言.

毕竟开始小实验都可以汇编完成.
玩熟了也开始做中小型项目了,用C语言比较效率.

而且以后设计精确度的东西都需要汇编写模块的..

其实没必要讨论太多.这只是个人的感觉而已.

如果你喜欢C语言,一心学下去精通也很牛了..还是能玩的很棒的..
回复

使用道具 举报

发表于 2010-9-18 08:00 | 显示全部楼层
玩电子垃圾多年,最近几年越来越感觉到单片机好玩,可是读了几本不同的单片机书籍,还是只能停留在抄例程演 ...
旁听生 发表于 2010-9-16 18:09 https://www.yleee.com.cn/images/common/back.gif


   
              任何语言都有存在的道理。如果只是玩单片机,选择何种语言并不重要,只要自我感觉方便就行!能玩起来才是硬道理!  

  初涉BASIC_AVR,感觉就是简洁。但对硬件的操作就会有些难度!


             以一个简单的实例说明:

           用自定义字符让1602显示“十”字形的图形,并让他不停地旋转。见下图

如果用其他语言编程比较复杂!

          但用BASIC_AVR就比较简洁,短短的只有几项,就解决问题。而且编程思路十分清晰!

这样的好处是一旦有问题,方便修改!



//==============================================================
         $regfile = "2313def.dat"
$crystal = 4000000
$sim
Config Portd = Output
Dim Star As Byte
Cursor Off

//======说明:源码中的自定义字符,由编译器自有的LCD产生
Deflcdchar 0 , 32 , 4 , 4 , 31 , 4 , 4 , 32 , 32   
Deflcdchar 1 , 32 , 2 , 20 , 14 , 5 , 8 , 32 , 32
Deflcdchar 2 , 32 , 2 , 26 , 4 , 11 , 8 , 32 , 32
Deflcdchar 3 , 32 , 17 , 10 , 4 , 10 , 17 , 32 , 32
Deflcdchar 4 , 32 , 8 , 11 , 4 , 26 , 2 , 32 , 32
Deflcdchar 5 , 32 , 8 , 5 , 14 , 20 , 2 , 32 , 32

Cls
Do
  For Star = 0 To 5 Step 1
    Portd = 255
    Waitms 100
    Portd = 0
    Waitms 100
    Locate 1 , 16
    Lcd Chr(star)
  Next Star
Loop
End
//=============================================================


       1.JPG


附件一:    自作的仿真运行文件,打开后可见到旋转的运行情况
      
                lcd.rar (11.57 KB, 下载次数: 2198)

附件二:     已编译的源码

s1.rar (65.87 KB, 下载次数: 2202)
回复

使用道具 举报

发表于 2010-9-18 15:22 | 显示全部楼层
回复 5# kirsuze


其实吧,初学者完全没有必要去学习汇编,太底层的东西根本就不必知道。
回复

使用道具 举报

发表于 2010-9-18 16:29 | 显示全部楼层
个人看法:
1、倪工说得好啊,任何语言都有存在的道理。如果没有长处它就不存在了。其实任何语言(包括汇编)都是助记符,避免使用者面对枯燥无意义的机器码。只要理解了MCU的工作原理,用哪种助记符不重要,一通百通,顶多就是熟悉程度不同写代码的速度快慢的区别。

2、楼主20多年前上大学,现在应该快奔5了吧,要从头学一套语言也挺累的,如果有basic基础,就用basic也无不可。其实basic也能干很多事情,就象jun427吕老师,他的作品几乎全部用Basic写的,又有几个人用C能写出来?关键在对MCU原理的理解,不在于用哪种语言或是哪个编译器,因为人家既然开发出来一套编译系统,肯定就考虑到用户的各种需要了,别的语言有的,它肯定也能实现。

3、网上言论说C的编译效率高,Basic的编译效率低,其实很多是人云亦云。一种结构化语言,其基本元素都是那几样,在那些控制指令(循环、跳转)的编译方面,C能做到多精简,Basic也能做到,说basic的编译效率低,是因为basic的语法(ANSI标准)对变量定义很宽松,不严格要求先定义后使用,同名变量可以进行自由的类型转换,这就要求编译器在对变量处理上要作额外的处理。比如一个变量K,在basic中,它可以是存放字节数据,也可以存放长整型数据甚至双精度浮点数,这个需要编译器来“自动”处理(实际上编译器是作成链表在存放,以动态适应不同的数据类型),这样在开辟变量空间和引用变量值时就带来了额外的开销,效率就低了。在C中要求必须先对K进行类型说明(定义),然后才使用。这样编译器在处理上就简单多了,因为它处理的不是一个变长度的数据,而是定长数据,效率当然就高了。但仅是在早期PC上实现的basic是这样处理的,实际上近年推出的basic编译器,都明显要求并提倡这样做,对已经定义好的变量,编译器会“聪明”地象C一样来编译,效率也就提高了。特别是单片机上basic编译器,基本上都是要先定义后使用变量而且不支持变量类型动态转换,这样编译器在处理时也能和C一样进行处理,代码效率和执行效率方面相对于C只会稍低一些,不会有成倍的差距。

总而言之,如果是想玩玩,玩什么都可以。如果有决心有毅力,打算以此为业,C和汇编更好。

又:bascom 8051我以前装过,玩了一下,感觉不难,入门有书最好,没有书个人觉得看完它自带的例子(examples目录下)也基本就上手了。bascom8051的书,我以前从网上下过一本,全英文的,如果楼主需要我可传上来,不过全英文的,看着很累。
回复

使用道具 举报

 楼主| 发表于 2010-9-18 23:26 | 显示全部楼层
感谢楼上各位的热心,说心里话,还是真想学用c语言的,主要是网上有很多例程,并且方便请教啊,毕竟用的人数众多。但看了几本c语言的书,越看越糊涂,没信心了。bascom8051的例程看过几个,还是觉得它好理解,确实很简单,但很难找到资料,所以才会犹豫。
回复

使用道具 举报

发表于 2010-9-19 08:24 | 显示全部楼层
感谢楼上各位的热心,说心里话,还是真想学用c语言的,主要是网上有很多例程,并且方便请教啊,毕竟用的人数 ...
旁听生 发表于 2010-9-18 23:26 https://www.yleee.com.cn/images/common/back.gif



         由于VB略知一二,所以对bascom并不感冒。但也确实国内应用的人太少!
回复

使用道具 举报

本版积分规则

QQ|一淘宝店|手机版|商店|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2025-11-4 20:17 , Processed in 0.043187 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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