您现在所在的是:

单片机论坛

回帖:20个,阅读:1689 [上一页] [1] [2] [3] [下一页]
1094
972001057
文章数:126
年度积分:50
历史总积分:1094
注册时间:2011/10/24
发站内信
发表于:2013/7/30 9:30:08
#0楼
想学单片机好久了,以前一直在了解怎么入门单片机基础,找了很多方方面面的资料。有的说学汇编、有的说学C,当然,现在也是觉得C比较适用的。但看了一段时间单片机C语言入门基础,看不明白啊。看了论坛很多贴,都说理论实践相结合就最好。所以前段时间终于出手了,在淘宝上买了一块学习开发板,但买回来不会用啊。又得看资料,有软件,但也不知道怎么用,知道怎么模拟,但看不懂那个原理是怎么回来。C指令也看不懂啊,想不明白它是怎么通过语言来输出开关信号呢?好困惑,求高人指点啊?找不到入门的路啊。
1733
kachakacha
文章数:736
年度积分:50
历史总积分:1733
注册时间:2006/5/24
发站内信
发表于:2013/7/30 9:50:40
#1楼
重要的是思考,不是依样画葫芦的拿着教程中的东西去键入。

C指令看不懂,去思考了没有呢?当今开源的C编译器不少,有没有键入一下去看看呢?

不会思考,哪怕把教程背出来了也没有用,那叫书呆子。

Good Luck~
有问题请在论坛提问……作为CVLSAM的马甲,我亚历山大……
Good Luck~
邮箱是anonymousfa@163.com但是我忘记密码了
1094
972001057
文章数:126
年度积分:50
历史总积分:1094
注册时间:2011/10/24
发站内信
发表于:2013/7/30 10:38:54
#2楼
回复 #1楼 kachakacha
有思考啊,就是没打开思路,所以才想不明白嘛。如果没有思考,那来想不明白呢?你说是吧。看着程式执行,就是搞不懂原理。我想还是知识储备的不够,基础撑握得太少。所以还得多看别人的程式,然后自己思考。再键入试运行。
1733
kachakacha
文章数:736
年度积分:50
历史总积分:1733
注册时间:2006/5/24
发站内信
发表于:2013/7/30 10:59:37
#3楼
以下是引用9720010572013/7/30 10:38:54的发言:
有思考啊,就是没打开思路,所以才想不明白嘛。如果没有思考,那来想不明白呢?你说是吧。看着程式执行,就是搞不懂原理。我想还是知识储备的不够,基础撑握得太少。所以还得多看别人的程式,然后自己思考。再键入试运行。
思考的话,一般会这样问:

各位,下面程序中XXX行代表啥意思,我的运行结果为啥是这样。

你跟我公司同事一样,一步想登天,不肯花时间认真的学,所以跟我这种高手学了一年了,连个基本程序都不会写。

Good Luck~
有问题请在论坛提问……作为CVLSAM的马甲,我亚历山大……
Good Luck~
邮箱是anonymousfa@163.com但是我忘记密码了
7672
w71412659
文章数:1455
年度积分:53
历史总积分:7672
注册时间:2013/5/8
发站内信
2018论坛魅力之星
发表于:2013/7/30 10:59:45
#4楼
会C语言不?会C语言的话应该不会存在什么问题。你用的什么单片机?51的话更简单,如果是ARM还要搭建开发环境就得弄半天。开关信号就是相当于把相应的变量置1就是开,置0就是关。说的太笼统了,也不好给你解答。
兽人永不为奴,除非包吃包住!
9620
Kate
文章数:1123
年度积分:68
历史总积分:9620
注册时间:2002/3/24
发站内信
发表于:2013/7/30 11:05:01
#5楼
看来还是半个书呆子,台湾才叫程式。
人有人意我有我意合得人意恐非我意合得我意恐非人意人意我意恐非天意合得天意自然如意
6468
jamsonwo
文章数:962
年度积分:101
历史总积分:6468
注册时间:2010/8/24
发站内信
发表于:2013/7/30 11:20:14
#6楼
学单片机得先弄明白其硬件结构,中断、定时/计数器、IO寄存器、时钟系统及指令周期,然后选择一门开发语言!
1094
972001057
文章数:126
年度积分:50
历史总积分:1094
注册时间:2011/10/24
发站内信
发表于:2013/7/30 11:31:40
#7楼
回复 #3楼 kachakacha
大侠见笑了。
问题我已经说的很明白了,初学者,刚学C。看不懂程式,理解不了原理。有机会应该要跟大侠你学习学习。
就请阁下解说一下吧
#include<reg52.h>
#include<stdio.h>
void main()
{
unsigned char a1,a2;
singned char b1,b2;

scon=0x50;
tmod=(tmod & 0x0f)| 0x20;
th1=221;
ie|=0x90;
tr1=1;
ti=1;

a1=0x7f;
b1=0x7f;
printf("a1=%d",(int)(a1));
printf("b1=%d",(int)(b1));
printf("\n");

a1=0x91;
b2=0x91;

printf("a2=%d,(int)(a2));
printf("b2=%d,(int)(b2));

while(1)
{}
}

请大侠解说一下这个过程的原理。小弟万分感谢。
1094
972001057
文章数:126
年度积分:50
历史总积分:1094
注册时间:2011/10/24
发站内信
发表于:2013/7/30 11:33:33
#8楼
回复 #4楼 w71412659
我刚在网上买了一个51开发板。
我是没有一点C语言基础。自学过PLC,我感觉我可能是没有从那种开关的思维跳转到变量来,所以很多不理解。
现在困惑的是,不知怎么入门,找不到突破口。
1094
972001057
文章数:126
年度积分:50
历史总积分:1094
注册时间:2011/10/24
发站内信
发表于:2013/7/30 11:35:21
#9楼
回复 #6楼 jamsonwo
概括得很好,但我感觉迷茫。一个月过去了,书看不懂,用别人的程式来仿真,也找不到入门的路。纠结……

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

78.0005