精华内容
下载资源
问答
  • STC15F2K60S2单片机开发板软硬件技术资料包括36个软件DEMO源码+硬件参考设计原理图及文档资料: STC-ICE-VER2-chinese.DOC STC152k系列使用手册 启光电子2015.pdf STC15系列尺寸.pcb STC芯片封装.rar 关于12864的...
  • 基于STC15F2K60S2单片机波形发生器设计.pdf
  • 基于STC15F2K60S2单片机的DHT11+CO2测量系统,在LCD1602上显示。由于是基于库函数的,所以方便用户修改代码,达到自己想要的功能。STC15F2K60S2单片机也是51内核的,但是功能更加强大。
  • 分析了CAN总线通信的性能和...针对采用单片机实现与CAN总线接口的问题,详细探讨了用STC15F2K60S2单片机结合总线控制器SIA1000和总线收发器PCA82C250芯片构成CAN总线接口电路的实现,并介绍了接口驱动软件的编制流程。
  • STC15F2K60S2单片机例程集合
  • 本代码已经过调试,里面包含蓝牙通讯,51单片机驱动小车的内容,只需在手机上下载一个蓝牙APP,将本代码烧进单片机小车,与手机端蓝牙连接即可
  • 基于STC15F2K60S2单片机的电流信号检测仪.pdf
  • 详细介绍了STC15F2K60S2单片机的特殊功能寄存器,该款单片机功能强大,资源较多。
  • 基于stc15f2k60s2芯片单片机编程(AD加串口) 基于stc15f2k60s2芯片单片机编程(AD加串口) 基于stc15f2k60s2芯片单片机编程(AD加串口) 基于stc15f2k60s2芯片单片机编程(AD加串口)
  • 附件内容分享的是来自STC官网的STC15F2K60S2系列学习板-32KSRAM电路图。 STC15F2K60S2学习板电路截图:
  • 这是个中文版的,对应还有个英文版的。STC15F2K60S2是一款功能很强大的芯片,而这个操作手册也是我见过最完整的。
  • 实验1 闪烁灯实验,实验2 按键控制LED灯,实验3 定时器查询方式精确定时,实验4 定时器中断方式精确定时(引入系统时间概念),实验5 第2次按键控制LED灯,实验6 PC机与单片机串口通信,实验7 串口打印调试,实验8 DIY...
  • 基于单片机STC15F2K60S2的LED篮排球比赛记分牌的设计.pdf
  • STC15F2K60S2系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快7-12倍。本开发板特点如下:1、采用STC15F2K60S2-28I 工业级...
  • STC15F2K60S2 iic 驱动程序 它的驱动不同于51,略有变化,仅供参考
  • 宝宝贴身保姆以STC15F2K60S2单片机为主控器,外加路由、摄像头、语音模块、电机系统、声音采集模块,温湿度采集和实时时钟等组成部分。利用摄像头采集视频信息,路由器将视频信息传送到网络,利用手机或电脑等连接到...
  • stc15f2k60s2的最小系统原理图,教你如何画stc15f2k60s2,快快下载吧!!
  • 配合文章STC15F2K60S2单片机评估版开发日志使用
  • stc15F2K60S2单片机头文件
  • 154第8章STC15F2K60S2单片机的定时/计数器例题例8.1用T1方式0实现定时,在P1.0引脚输出周期为10mS的方波。解:根据题意,采用T1方式0进行定时,因此,(TMOD)=00H。因为方波周期是10mS,因此T1的定时时间应为5mS,每...

    154

    8

    STC15F2K60S2

    单片机的定时

    /

    计数器

    例题

    8.1

    T1

    方式

    0

    实现定时,在

    P1.0

    引脚输出周期为

    10mS

    的方波。

    根据题意,采用

    T1

    方式

    0

    进行定时,因此,

    (

    TMOD

    )

    =00H

    因为方波周期是

    10mS

    ,因此

    T1

    的定时时间应为

    5mS

    ,每

    5mS

    时间到就对

    P1.0

    取反,

    就可实现在

    P1.0

    引脚输出周期为

    10mS

    的方波。系统采用

    12M

    晶振,分频系数为

    12

    ,即定

    时脉钟周期为

    1

    μ

    S

    ,则

    T1

    的初值为:

    X = M

    计数值

    = 65536

    5000 = = 60536 =EC78H

    即:

    TH1 = ECH

    TL1 = 78H

    (

    1

    )查询方式实现:

    ORG

    0000H

    MOV

    TMOD

    #00H

    ;设

    T1

    为方式

    0

    定时模式

    MOV

    TH1

    #0ECH

    ;置

    5mS

    定时的初值

    MOV

    TL1

    #78H

    SETB

    TR1

    ;启动

    T1

    Check_TF1

    JBC

    TF1

    Timer1_Overflow

    ;查询计数溢出

    SJMP

    Check_TF1

    ;未到

    5mS

    继续计数

    Timer1_Overflow

    CPL

    P1.0

    ;对

    P1.0

    取反输出

    SJMP

    Check_TF1

    ;未到

    1s

    继续循环

    END

    (

    2

    )中断方式实现:

    ORG

    0000H

    LJMP

    MAIN

    ;上电复位后,转

    MAIN

    ORG

    001BH

    LJMP

    Timer1_ISR

    T1

    中断响应后,转

    Timer1_ISR

    ORG

    0100H

    MAIN

    MOV

    TMOD

    #00H

    ;设

    T1

    为方式

    0

    定时模式

    MOV

    TH1

    #0ECH

    ;置

    5mS

    定时的初值

    MOV

    TL1

    #78H

    SETB

    ET1

    展开全文
  • stc15f2k60s2单片机开发环境构建

    千次阅读 多人点赞 2020-12-22 17:45:37
    stc15f2k60s2单片机开发环境构建 ​ 时间:2020-12-22 开发环境构建… 1 1. 开发软件… 2 1.1. Keil5… 2 2. 问题1:keil软件工程包没有STC15F2K60S2芯片的资源包,所以构建项目工程文件会失败。… 2

    stc15f2k60s2单片机开发环境构建

    ​ 时间:2020-12-22

    开发环境构建… 1

    1. 开发软件… 2

    1.1. Keil5… 2

    2. 问题1:keil软件工程包没有STC15F2K60S2芯片的资源包,所以构建项目工程文件会失败。… 2

    3. 问题1的解决方案:… 2

    3.1. 1、下载最新的STC-ISP软件(此软件是程序烧写软件)… 2

    3.1.1. 在STC官网中可以下载… 2

    3.1.2. (http://www.stcmicro.com/cn/stc/stc15f2k60s2.html)… 2

    3.2. 2、打开软件找到KEIL仿真选项卡… 2

    3.3. 3、在单片机型号中选择IAP15F2K61S2… 3

    3.4. 4、点击添加型号和头文件到KEIL中按钮… 5

    3.5. 5、正确选择KEIL中C51的安装目录… 6

    4. 方案测试… 9

    4.1. 1、新建工程… 9

    4.2. 2、编写测试代码… 13

    4.3. 运行… 14

    1. 开发软件–Keil5

    2. 问题1:keil软件工程包没有STC15F2K60S2芯片的资源包,所以构建项目工程文件会失败。

    3. 问题1的解决方案:

    3.1. 1、下载最新的STC-ISP软件(此软件是程序烧写软件)

    3.1.1. 在STC官网中可以下载

    (http://www.stcmicro.com/cn/stc/stc15f2k60s2.html)

    3.2. 2、打开软件找到KEIL仿真选项卡

    3.2.1.

    在这里插入图片描述

    3.3. 3、在单片机型号中选择IAP15F2K61S2

    3.3.1.

    在这里插入图片描述

    3.3.2.

    在这里插入图片描述

    3.4. 4、点击添加型号和头文件到KEIL中按钮

    3.4.1.

    在这里插入图片描述

    3.5. 5、正确选择KEIL中C51的安装目录

    3.5.1.

    在这里插入图片描述

    3.5.2.

    在这里插入图片描述

    3.5.3.

    在这里插入图片描述

    4. 方案测试

    4.1. 1、新建工程

    4.1.1.

    在这里插入图片描述

    4.1.2.

    在这里插入图片描述

    4.1.3.

    在这里插入图片描述

    4.1.4.

    在这里插入图片描述

    4.1.5.

    在这里插入图片描述

    4.1.6.

    在这里插入图片描述

    4.1.7.

    在这里插入图片描述

    4.1.8.

    在这里插入图片描述

    4.2. 2、编写测试代码

    4.2.1.

    在这里插入图片描述

    4.3. 运行

    4.3.1.

    在这里插入图片描述

    展开全文
  • 基于stc15f2k60s2芯片单片机编程(温度时间距离串口按键长短按)
  • STC15F2K60S2单片机笔记

    2021-07-28 11:06:03
    2. STC单片机上电复位的时候,普通I/O口为弱上拉(准双向口)高电平输出。 这些IO口均可配置为四种工作类型之一:弱上拉(准双向口)高电平输出、推挽输出(强上拉)、高阻输入(电流既不能流入也不能流出)、开漏...

    1. 对时钟进行分频,可以降低系统功耗;

    2. STC单片机上电复位的时候,普通I/O口为弱上拉(准双向口)高电平输出。

    这些IO口均可配置为四种工作类型之一:弱上拉(准双向口)高电平输出、推挽输出(强上拉)、高阻输入(电流既不能流入也不能流出)、开漏输出;

    每个口由2个控制寄存器的相应位控制每个引脚的工作类型,比如P0脚:P0M0, P0M1

    P0M1[7:0]

    P0M0[7:0]

    I/O口模式

    0

    0

    准双向口

    0

    1

    推挽

    1

    0

    高阻

    1

    1

    开漏

    比如 P0.0 设置为 00->准双向, 那么P0M0= xxxx xxx0, P0M1= xxxx xxx0

    MOV P0M1,#10100000B

    MOV P0M0, #11000000B

    P0.7为开漏,P0.6为推挽,P0.5为高阻,其他均为准双向口/弱上拉

    3. IE-----Interrupt Enable

    IP------Interrupt Priority

    4.STC 15系列单片机:

    串口1,默认选择定时器2做波特率发生器,也可以设置定时器1做波特率发生器

    串口2,只能选择定时器2做波特率发生器

    其他串口也是默认定时器2做波特率发生器,但也可以设置对应串口号的定时器做波特率发生器。

    定时器做波特率发生器时,不能做其他用途。

    5.

    串口1:可以在端口P1.6 1.7(必须内部时钟)------P3.0 3.1(这个留给下载和仿真用的)------P3.6  3.7之间切换

    实际使用的串口1端口是P3.6  3.7,通过485通讯的,R端发数据出去是通过这个串口;

    串口2:可以在端口P1.0 1.1 ------P4.6 4.7之间切换

    实际使用的串口2端口是P1.0 1.1,TTL通讯液晶屏LCD显示数据是这个这个串口进行的。

    两个串口可以同时使用,不会相互影响

    5. 串口相关寄存器:

    控制寄存器:SCON PCON

    AUXR辅助寄存器,控制定时器T0、T1的速度(分频、不分频),uart1、uart2两个串口的选择哪个定时器(T0、T1)做波特率发生器。

    P_SW1外设功能切换寄存器1, 可以设置串口1(S1)的RxD\TxD管脚使用哪组, 串口1:P3.6, P3.7
     

    展开全文
  • u8 str[15]; void main(void) { P2=0xa0;P0=0x00;P2=0x00; // 关闭蜂鸣器 Timer0_Init(); //1ms 定时器0初始化 Timer1Init(); InitLcd1602(); while(1) { if(timer_500ms_flag) { timer_500ms_flag=0; ...

    #include

    #define u8 unsigned char

    #define u16 unsigned int

    sbit PWM = P1^0;

    extern void InitLcd1602();

    extern void LcdShowStr(unsigned char x, unsigned char y,unsigned char *str, unsigned char len);

    u8 Trg,Cont;                   //独立按键

    #define KEYPROUT P3

    void key_read(void)

    {

    u8 ReadData = KEYPROUT^0xff;

    Trg = ReadData&(ReadData^Cont);

    Cont = ReadData;

    }

    void Timer0_Init(void) //1ms   定时器0初始化

    {

    AUXR |= 0x80; //1T timer

    TMOD &= 0xF0; // 16bit

    TL0 = 0xCD;

    TH0 = 0xD4;

    TF0 = 0;

    TR0 = 1;

    ET0 = 1;

    EA=1;

    }

    void Timer1Init(void)  //100微秒@11.0592MHz

    {

    AUXR |= 0x40;  //定时器时钟1T模式

    TMOD &= 0x0F;  //设置定时器模式

    TL1 = 0xAE;  //设置定时初值

    TH1 = 0xFB;  //设置定时初值

    TF1 = 0;  //清除TF1标志

    TR1 = 1;  //定时器1开始计时

    ET1 = 1;

    }

    bit key_flag,timer_500ms_flag;

    u8 pwm_set=5;

    u8 str[15];

    void main(void)

    {

    P2=0xa0;P0=0x00;P2=0x00;    // 关闭蜂鸣器

    Timer0_Init();              //1ms   定时器0初始化

    Timer1Init();

    InitLcd1602();

    while(1)

    {

    if(timer_500ms_flag)

    {

    timer_500ms_flag=0;

    LcdShowStr(0,0,str,1);

    }

    str[0] = pwm_set + '0';

    if(key_flag)     // 按键扫描

    {

    key_flag=0;

    key_read();

    if(Trg&0x08)//s4

    {

    pwm_set++;

    }

    if(Trg&0x04)//s5

    {

    pwm_set--;

    }

    if(Trg&0x02)//s6

    {

    }

    if(Trg&0x01)//s7

    {

    }

    if(Cont)     //按键按下

    {

    }

    if(Trg==0&Cont==0) //按键放开

    {

    }

    }

    }

    }

    void timer0() interrupt 1  using 1

    {

    static int key_count=0,timer_500ms=0;

    key_count++;timer_500ms++;

    if(key_count==10)   //10ms 按键扫描

    {

    key_count=0;

    key_flag=1;

    }

    if(timer_500ms==500)

    {

    timer_500ms=0;

    timer_500ms_flag=1;

    }

    }

    void timer1() interrupt 3

    {

    static u8 pwm_count=0;

    pwm_count++;

    if(pwm_count==pwm_set)

    {

    PWM=0;

    }

    if(pwm_count==10)

    {

    pwm_count=0;

    PWM=1;

    }

    }

    #include

    #define LCD1602_DB  P0

    sbit LCD1602_RS = P2^0;

    sbit LCD1602_RW = P2^1;

    sbit LCD1602_E  = P1^2;

    /* 等待液晶准备好 */

    void LcdWaitReady()

    {

    unsigned char sta;

    LCD1602_DB = 0xFF;

    LCD1602_RS = 0;

    LCD1602_RW = 1;

    do {

    LCD1602_E = 1;

    sta = LCD1602_DB; //读取状态字

    LCD1602_E = 0;

    } while (sta & 0x80); //bit7等于1表示液晶正忙,重复检测直到其等于0为止

    }

    /* 向LCD1602液晶写入一字节命令,cmd-待写入命令值 */

    void LcdWriteCmd(unsigned char cmd)

    {

    LcdWaitReady();

    LCD1602_RS = 0;

    LCD1602_RW = 0;

    LCD1602_DB = cmd;

    LCD1602_E  = 1;

    LCD1602_E  = 0;

    }

    /* 向LCD1602液晶写入一字节数据,dat-待写入数据值 */

    void LcdWriteDat(unsigned char dat)

    {

    LcdWaitReady();

    LCD1602_RS = 1;

    LCD1602_RW = 0;

    LCD1602_DB = dat;

    LCD1602_E  = 1;

    LCD1602_E  = 0;

    }

    /* 设置显示RAM起始地址,亦即光标位置,(x,y)-对应屏幕上的字符坐标 */

    void LcdSetCursor(unsigned char x, unsigned char y)

    {

    unsigned char addr;

    if (y == 0)  //由输入的屏幕坐标计算显示RAM的地址

    addr = 0x00 + x;  //第一行字符地址从0x00起始

    else

    addr = 0x40 + x;  //第二行字符地址从0x40起始

    LcdWriteCmd(addr | 0x80);  //设置RAM地址

    }

    /* 在液晶上显示字符串,(x,y)-对应屏幕上的起始坐标,

    str-字符串指针,len-需显示的字符长度 */

    void LcdShowStr(unsigned char x, unsigned char y,

    unsigned char *str, unsigned char len)

    {

    LcdSetCursor(x, y);   //设置起始地址

    while (len--)         //连续写入len个字符数据

    {

    LcdWriteDat(*str++);  //先取str指向的数据,然后str自加1

    }

    }

    /* 初始化1602液晶 */

    void InitLcd1602()

    {

    LcdWriteCmd(0x38);  //16*2显示,5*7点阵,8位数据接口

    LcdWriteCmd(0x0C);  //显示器开,光标关闭

    LcdWriteCmd(0x06);  //文字不动,地址自动+1

    LcdWriteCmd(0x01);  //清屏

    }

    展开全文
  • STC15F2K60S2最小系统板,包含复位电路、LCD12864迷你液晶屏、蜂鸣器等
  • STC15F2K60S2单片机/DHT11/OLED12864/串口通信

    千次阅读 多人点赞 2019-12-07 00:26:57
    STC15F2K60S2单片机…DHT11…OLED12864…串口通信 本节教程我们来重点讲一讲DHT11温湿度传感器的用法以及实现程序 一、先斩后奏,上程序! 1、dh11.c /*****************************************DHT11温湿度传感器+...
  • STC15F2K60S2单片机的串口通信程序及相关知识

    万次阅读 多人点赞 2018-06-28 14:12:57
    一、STC15F2K60S2单片机简介 中国深圳宏晶STC系列单片机是2005年推出中国本土的第一款具有全球竞争力的,且与MCS-51兼容的STC系列单片机。它完全兼容51单片机,是新一代增强型单片机,速度快、抗干扰性强、加密性强...
  • 目录第1章 微型计算机基础1.1 数制与编码1.1.1 数制及转换方法1.1.2 微型计算机中数的表示方法1.1.3 微型计算机中常用编码1.2 微型计算机原理1.2.1 ...STC15F2K60S2单片机增强型8051内核2.1 单片机概述2.1.1 单片机...
  • STC15F2K60S2单片机的医疗马桶设计.pdf
  • STC15F2K60S2单片机开发板.pdf

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,729
精华内容 691
关键字:

stc15f2k60s2单片机