电子技术论坛

 找回密码
 快速注册

QQ登录

只需一步,快速开始

搜索
搜索附件  

热门下载

© 电子技术论坛 文件下载中心

谁在学习单片机?我可以教大家。: LCD_12864.rar

 

谁在学习单片机?我可以教大家。
      看来论坛里好多人在学习,如果不有懂的地方,尽量写清楚,我有空时,会一一解答,好共同进步。

1、数字电路知识,比如常用的74系列IC你得能看得懂datasheet ,明白寄存器、反相器、等基础的东东。
2、如果有基本的模拟电路知识那就最好了。
3、对电脑有一定的认识,比如硬件系统构成大概原理、什么叫操作系统、什么叫应用软件、他们之前的关系是什么?
4、要有一定的逻辑思维能力,因为程序的好与坏就是与编程者的逻辑能力有关。
5、要有足够的耐心,耐得住寂寞,守得住孤独。
6、坚持一年,你就可以做项目了。

另:我不太清楚你的基础如何,记住,兴趣最重要。其它的都是浮云。

我的级别不够 高,加好友也加不了,发言也受限,希望理解。
climber 发表于 2012-11-19 11:22
1、数字电路知识,比如常用的74系列IC你得能看得懂datasheet ,明白寄存器、反相器、等基础的东东。
2、如 ...

下面是我的情况 你看看学这个行不行
高中毕业   从事制冷维修4年了  会修理普通单项和三相电动机  有两年的水电安装经验  基本的电子元件会测量  热爱电脑 偶尔给人组装电脑 系统维护什么的  模拟电子技术会一点 不是很熟
陈瑞陈虎 发表于 2012-11-19 13:27
下面是我的情况 你看看学这个行不行
高中毕业   从事制冷维修4年了  会修理普通单项和三相电动机  有两年 ...


完全可以,有高中的知识足了。加油啊,不要再犹豫。

你懂的比我多,呵呵,对于制冷、电机我还真是外行,以后向你学习。呵呵
本帖最后由 climber 于 2012-12-12 20:21 编辑
haijiang 发表于 2012-12-10 10:34
一直在网上看视频,学的很乏味,想做个东西放在桌子上,给自己增加点信心,鼓励一下自己。手头有些元件,一 ...


这个程序网上很多,只是你没有看到,给你一个我项目中用的吧,你把引脚部分全部改为你的IO口就行了。附件是一个头文件,你包含进去就行了,希望你成功。


本帖最后由 climber 于 2012-12-13 21:56 编辑
haijiang 发表于 2012-12-12 21:24
非常感谢,可我的控制器是KS0108啊,你这个是7920


呵呵 ,那是你说错了,因为你前面写着:液晶的控制器是KS0108

KS0108 是不带字库的,驱动起来有点麻烦,主要是指字库初次不好理解。
7920  是带字库的,这个最容易了。


climber 发表于 2012-12-13 17:20
呵呵 ,那是你说错了,因为你前面写着:液晶的控制器是KS0108

KS0108 是不带字库的,驱动起来有点麻 ...


是比较麻烦,可是我手头只有这一块啊
帮忙看看这个程序,网上找的,但编译是报错。看看错的多吧,要是不太麻烦刚我改一下,谢谢了

climber 发表于 2012-12-13 22:47
呵呵,我也没有时间啊,如果你提一些问题讨论还可以,如果你让你帮你改程序,我时间不够,因为我平时也较忙 ...

哦,那帮我看看这个文件里的东西,他是用什么软件写的程序,我从keil里打开l怎么全是一段一段的呢?怎么才能把他放到一起去呀!谢谢
climber 发表于 2012-12-15 21:02
你解压后,看文件扩展名,如果是****.c 或者*****.h的留下,其它的都可以删除了,有一些是是KEIL的工程文件 ...

明白,是我之前没表达清楚,我自己用keil写程序时只会产生一个c文件,用记事本打开后,它里面包含了完整的程序。我(40楼)贴出来的那个是从网上找的,它里面包含了好几个c文件和h文件,打开后,一个里面只是一部分程序,并不完整。感觉是把一个完整的程序装在了几c个文件里面。这是怎么回事啊?我主要是想把他原来程序的位定义修改一下,然后再重新编译。可是他写的程序没在一个文件里面,我没办法修改和重新编译。
苏焕美 发表于 2013-1-25 17:07
我正在学AVR,请问入门要从哪里开始,!

如果你有51的基础那就快了,如果没有51的基础也不要怕,我推荐你学ATmega16  这个片子,因为功能较全面一点,封装有DIP40 的,自已做试验也方便焊接。学会ATmega16整个AVR系列的都通了。
1191727499 发表于 2013-1-27 13:40
我的学问不高,能行吗?

单片机并不需要很高的学问,只是你要对一些基础的东西要明白,否则理解起来有点困难,如果没有人教的话。因为是自学,所以有很多东西没有像学校那样系统的学习,所以开始的时候会难一点,不过不要怕。如果你对计算机还不是很了解的话,建议还是先了解一下计算机的构成及原理,这样再去学会好学一点。知识都是触类旁通的,关键看应用。最好能多学一点E文,关要有习惯看E文的DATASHEET,这个很重要。
看到很多人想学,只是不知道从那里入手。我建议一下按以下流程去学。
1、买一个最简单的开发板或者自已动手搭一个,网上很多这样的图。比如LED点灯等等。
2、学习如何用编译软件,并且了解编译软件的设置及各基的作用还有如何编译。
3、试着理解C或者ASM,如果碰到不懂的地方再翻书去查,这样比先看书会效果好,因为这样目的性强。但最好先把书的各章节大致扫描一下,不致于翻书都不知如何翻。
4、试着修改最小的程序看会出现什么结果?并问为什么,要理解。
5、试着自已建一个工程文件,看下各个文件的作用及构成。特别是名词解释,要善于利用网络带来的便利。
6、结果书的例子做试验。
7、理解书上的东西,你离成功已不远。
周凯乐 发表于 2013-3-11 18:52
有stc资料吗?用keil4开发stc需要准备哪些软硬件?

STC资料很多啊,你上网搜“STC深圳宏晶”上官网有很多DATASHEET,具体的使用跟51是差不多的,只是有一些特殊的寄存器有点区别。如果用KEIL开发的话,你要有一个官方的下载器,当然你也可以自制一下,买的话要50元钱吧,建议买,不要浪费时间还有时不稳定。如果再搭一个试验平台就可以开工了,呵
你好楼主本人是初中毕业,电工干了有五六年,家电维修干了三年了,在技校学计算机维修学了两年,PLC编程电器维修都没有问题。PLC只要懂得电工电路图稍加学习即可完全掌握PLC,我也看过一些郭天祥的一些书籍,看着看着就懵了,单片机的数字电路模拟电路及外围电路硬件肯定是没有问题的,就是写程序就不行了,全是英语啊  本人不懂得英语啊,怎么学习呢  如何学习呢  可以学会C吗?
电子就业 发表于 2018-3-16 20:52
PLC和单片机有啥区别,程序一样吗

重点概念:PLC是由单片机等组成的应用系统,单片机应用电路可完成或替代PLC的使用功能,而PLC则不可替换单片机,PLC能组成系统实现自动控制功能,而单片机不仅可实现自动控制功能,更可设计或制造出PLC。
简单点说: PLC是单片机做的
请教,在做一个单键自锁开关(用的STC15F104W),按一下输出高电平,再按一下输出低电平(变成低电平时,延时10秒按键才有效)。

下面的代码有错误,还有延时代码也是复制过来的,看不懂
要怎么修改才能达到上面的要求,谢谢老师!

#include <STC15.h>
sbit  K1 =P3^2 ;  //按键
sbit  JDQ=P3^3 ;  //继电器
void delay()   //延时函数
{ unsigned char i,j;
    for(i=0;i<250;i++)
    {
        for(j=0;j<200;j++);
    }
}
void main()
{  
        JDQ=0;
        while(1);
           {
   if (K1==0) //
{
       
        delay();
        if (K1==0)
        {
        JDQ=~JDQ;
        }
        while(!K1);
       
        else
        JDQ=0;
}
}


hnxhzqa 发表于 2019-9-27 11:34
请教,在做一个单键自锁开关(用的STC15F104W),按一下输出高电平,再按一下输出低电平(变成低电平时,延 ...
  1. #include <STC15.h>

  2. #define kRelay_on 0  // 定义继电器打开值
  3. sbit K1 = P3 ^ 2; //按键
  4. sbit JDQ = P3 ^ 3;    //继电器
  5. void delay(void)      //延时函数
  6. {
  7.   unsigned char i, j;
  8.   for (i = 0; i < 250; i++) {
  9.     for (j = 0; j < 200; j++) {
  10.       ;
  11.     }
  12.   }
  13. }

  14. void delay_ms(unsigned int uiNumber) {

  15.   while(uiNumber) {
  16.     uiNumber--;
  17.     // 这里是延时1ms函数内容
  18.     delay();
  19.   }
  20. }

  21. void main(void) {
  22.   bit flagJDQ = !kRelay_on;

  23.   JDQ = flagJDQ;
  24.   while (1) {
  25.     if (flagJDQ != JDQ) {
  26.       if (JDQ == !kRelay_on) {
  27.         delay_ms(10000);
  28.       }
  29.       flagJDQ = JDQ;
  30.     } else {
  31.       if (K1 == 0) {
  32.         delay();
  33.         if (K1 == 0) {
  34.           JDQ = ~JDQ;
  35.         }
  36.         while (!K1) {
  37.         }
  38.       }
  39.     }
  40.   }
  41. }
复制代码


随便写了个简单例子,仅供参考。完整的写法是用定时器定时1秒,然后在循环中累计计数,就不用一直等待10秒。
本帖最后由 爱电器维修 于 2020-3-16 15:54 编辑

你好。我学单片机不是很好,现向你请教。想用1602LCM做显示的跑表来控制电源接通和断开还有用单片机设定电流和显示,在编程时用按键进行功能转换,设定时间秒和毫秒的数值怎样设计这个程序?
下面是我写的程序单就是不能转换status已设为全局变量。后面的调整大小还不知怎样和它连接请多多指教。
void set_display(void)
{
if(P3==0xef)
{
  status++;
  if(status>7){status=0;}
}
}
/******************************************************************************************/
void main(void)
{
InitLcd();
set_display();
switch(status)
{
  case 1isplayListChar(0,0,str0);
         DisplayListChar(0,1,str1);delay(100); break;
  case 2isplayListChar(0,0,str2);
         DisplayListChar(0,1,str3);delay(100);break;
         default : break;
  }
}

手机版|家电维修技术论坛 ( 鄂ICP备09003585号-2 )

GMT+8, 2024-11-22 04:32 , Processed in 0.071644 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

CopyRight © 电子技术论坛
电子邮箱:8794149@qq.com | 联系 QQ:3081868839 | 官方网址:www.dzdu.com

Qiji. All Rights Reserved


服务条款 | 站长声明

Wuhan Qiji Technology Co., Ltd.武汉奇迹科技有限公司版权所有


鄂ICP备09003585号-2鄂公网安备42010602000420号

返回顶部