搜索
bottom↓
回复: 12

我这颗STC8G1K单片机是不是坏了?

[复制链接]

出0入0汤圆

发表于 2021-5-6 13:02:30 | 显示全部楼层 |阅读模式
用的STC8G1K08A,原理图很简单,如下:



写个最简单的程序:

  1. #include <stc8g.h>

  2. #define u8  unsigned char
  3. #define u16 unsigned int

  4. void main()
  5. {
  6.         P33 = 1;
  7.        
  8.         while(1);
  9. }
复制代码


单片机供电为3.3V,P3.3不能输出高电平,咋回事

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入8汤圆

发表于 2021-5-6 13:07:47 来自手机 | 显示全部楼层
先设置端口模式

出100入0汤圆

发表于 2021-5-6 13:24:34 | 显示全部楼层
本帖最后由 dong889 于 2021-5-6 13:26 编辑

先设置端口模式,STC8G手册有说明上电后初始为高阻态,对比了一下STC8A系列的 上电初始为准双向IO,这点要吐槽一下STC  一不小心就掉坑!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2021-5-6 15:40:03 | 显示全部楼层
dong889 发表于 2021-5-6 13:24
先设置端口模式,STC8G手册有说明上电后初始为高阻态,对比了一下STC8A系列的 上电初始为准双向IO,这点要 ...

谢谢,确实是你说的问题,需要配置IO口的输出模式;

另外,再请教一下,这个单片机的串口我没调通,不知道哪里的问题;

程序下载完毕后,串口助手打开,一个字节也收不到,串口根本就没发数据;




  1. #include <stc8g.h>

  2. #define u8  unsigned char
  3. #define u16 unsigned int

  4. #define FOSC 11059200UL
  5. #define BRT (65536-FOSC/115200/4)

  6. bit busy = 0;


  7. void UART1_Isr() interrupt 4
  8. {
  9.     if (TI)
  10.     {
  11.         TI = 0;//清中断标志
  12.                                 busy = 0;
  13.     }
  14.     if (RI)
  15.     {
  16.         RI = 0;//清中断标志
  17.     }
  18. }

  19. void Delay500ms()                //@11.0592MHz
  20. {
  21.         unsigned char i, j, k;

  22.         i = 29;
  23.         j = 14;
  24.         k = 54;
  25.         do
  26.         {
  27.                 do
  28.                 {
  29.                         while (--k);
  30.                 } while (--j);
  31.         } while (--i);
  32. }

  33. void USART1_Init(void)
  34. {
  35.         P3M0 = 0X00;
  36.         P3M1 = 0X00;
  37. //        P3M0 |= 0x02;
  38. //        P3M1 &= ~0x02;

  39.   SCON = 0x50; //

  40. //        T2L = BRT;
  41. //        T2H = BRT>>8;

  42.   T2L = 0xe8;//65536-11059200/115200/4=0FFE8H
  43.   T2H = 0xff;
  44.   AUXR = 0x15;//启动定时器

  45.         busy = 0;

  46.   ES = 1;                                     //使能串口中断       
  47. }

  48. void USART1_SendOneByte(u8 dat)
  49. {
  50.   while(busy);
  51.         busy = 1;
  52.         SBUF = dat;
  53. }


  54. void main()
  55. {
  56.         USART1_Init();
  57.   EA = 1;
  58.                                  //发送测试数据
  59.   while (1){
  60.     USART1_SendOneByte(0x7f);
  61.                 Delay500ms();
  62.         }
  63. }
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

 楼主| 发表于 2021-5-6 15:40:44 | 显示全部楼层
sfes 发表于 2021-5-6 13:07
先设置端口模式

帮我看看串口1的发送吧,串口不工作

出1310入193汤圆

发表于 2021-5-6 18:59:29 | 显示全部楼层
stc-isp
玩stc, 这个根据必须有,里面的例子  够楼主好好学习一番

出0入8汤圆

发表于 2021-5-6 19:09:58 | 显示全部楼层
EA呢?   

出0入0汤圆

 楼主| 发表于 2021-5-6 19:48:21 | 显示全部楼层

EA = 1 在main函数里有

出0入0汤圆

 楼主| 发表于 2021-5-6 20:01:20 | 显示全部楼层
lb0857 发表于 2021-5-6 18:59
stc-isp
玩stc, 这个根据必须有,里面的例子  够楼主好好学习一番



没有STC8G系列哈?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出1310入193汤圆

发表于 2021-5-7 07:34:22 | 显示全部楼层
从代码组织来看  楼主把15F弄懂之后 其他的基本上都可以解决

出100入0汤圆

发表于 2021-5-7 10:24:10 | 显示全部楼层
sdlqzql 发表于 2021-5-6 15:40
谢谢,确实是你说的问题,需要配置IO口的输出模式;

另外,再请教一下,这个单片机的串口我没调通,不知道 ...

一开始看程序没发现问题,刚好手上有这颗芯片就顺手烧录了一下测试还真没串口数据!然后再去翻了手册,找到问题了,这颗MCU定时器资源只有0、1,程序用了定时器2作波特率发生器能工作才怪~~换定时器1就正常了!

出0入0汤圆

 楼主| 发表于 2021-5-7 20:13:33 | 显示全部楼层
dong889 发表于 2021-5-7 10:24
一开始看程序没发现问题,刚好手上有这颗芯片就顺手烧录了一下测试还真没串口数据!然后再去翻了手册,找 ...



昨晚研究了一晚上,睡前终于找到问题,就是你说的问题.

光看stc-isp给的例子,入了坑了

出0入0汤圆

 楼主| 发表于 2021-5-7 20:15:09 | 显示全部楼层
lb0857 发表于 2021-5-7 07:34
从代码组织来看  楼主把15F弄懂之后 其他的基本上都可以解决

昨晚光看例程了,掉进一个坑里,刚`爬出来.

谢谢指教
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-16 02:26

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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