找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2058|回复: 6
打印 上一主题 下一主题
收起左侧

12T单片机代码移植到1T单片机上出错

[复制链接]
跳转到指定楼层
楼主
ID:964308 发表于 2021-10-9 20:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近买了个mfrc522做IC卡的感应,读取到卡片后通过串口发送卡片的ID,同时把p1.0置低电平。
本来在c52里面运行地好好的,后来我感觉c52io口太多,这么搞有点浪费,就买了个1T的stc15w408as,查了些资料,发现这个芯片可以用c52的代码,只需要改几个io口和延时就行,然后我改完了烧录测试却发现不能用,不仅不会置低电平,而且串口也不会发送数据了,但是mfrc522能感应到卡片,说明它是可以和单片机通信的,这是怎么回事呢(希望不是mfrc522的问题,不然就很麻烦了),是不是我代码移植的有问题

代码.zip

5.55 KB, 下载次数: 8

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:624769 发表于 2021-10-9 21:12 | 只看该作者
你应该是,串口直接就没有用起来吧,

不幸的通知你,你必须重新学习STC15W408AS的手册,因为:
一, STC15W408AS 没有 T1 定时器, 而你的程序串口用的T1定时器。
二, STC15W408AS 的T2定时器,和普通C52有很大的区别,所以你不能按你C52的知识给串口使用 T2定时器,必须学习STC15W408AS 的方法。

建议: STC-ISP 里面的范例 STC15系列下面的 串口1使用T2定时器,你参考一下,修改你的程序。

P.S.  STC15W408AS 自带硬件 SPI,等你熟悉以后尝试用 硬件SPI 驱动 RC522 效果会更好,当然,这是后话。
回复

使用道具 举报

板凳
ID:964308 发表于 2021-10-9 23:06 | 只看该作者
188610329 发表于 2021-10-9 21:12
你应该是,串口直接就没有用起来吧,

不幸的通知你,你必须重新学习STC15W408AS的手册,因为:

谢谢了,不过我应该不是要重新学习那个手册,而是要开始学习
回复

使用道具 举报

地板
ID:624769 发表于 2021-10-10 14:22 | 只看该作者
dzc3458 发表于 2021-10-9 23:06
谢谢了,不过我应该不是要重新学习那个手册,而是要开始学习

不用谢。

由于,你之前在C52上,RC522都正常跑起来了,所以51单片机知识应该学的差不多了, 而STC15系列,属于姚氏增强型51,原理其实和51差不多,但是定义改了很多,所以我才用得“重新”,而不是“开始”这个词。
回复

使用道具 举报

5#
ID:339654 发表于 2021-11-1 08:29 | 只看该作者
注意驱动代码的时序
回复

使用道具 举报

6#
ID:514901 发表于 2021-11-1 09:05 | 只看该作者
1,配置端口模式为准双向IO 2、
回复

使用道具 举报

7#
ID:514901 发表于 2021-11-1 09:06 | 只看该作者
1、配置端口模式为双向IO           2、用STC的烧录器,里面有波特率设置的,选择芯片为STC15系列,然后选你要的波特率,生成后把波特率的代码置换一下就行
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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