Skip to content

Latest commit

 

History

History
56 lines (43 loc) · 1.84 KB

README.md

File metadata and controls

56 lines (43 loc) · 1.84 KB

Krona T2101 EDA课设记录

所有权利保留 © krona12 日期:2023/12/8

思路

  1. 日期函数

    • 初始实现:计数器重构,BCD码转换,仅处理年份后两位。
    • 后续改进:扩展到完整日期,重写BCD码转换以支持四位十进制数(二进制表示)到BCD的转换。
  2. 星期函数

    • 使用蔡勒公式及其改进版本(考虑到Verilog除法的局限性,舍去小数)。
  3. 步进电机模拟秒针运动

  4. 键盘扩展

    • 键盘与开关部分复用,保留4个开关,其余使用键盘逻辑。
    • 仅3个键盘按键有效,其余可能因上拉电阻问题无效。
  5. 变速器设计

    • 使CP能够通过按键改变,从而调整计数速度。
    • 使用计数器和数据选择器实现。
  6. 完善闹钟与闹铃

    • 将排线替换为跳线以增加端口。
  7. 点阵扩展

    • 实现点阵扫描编码。

解决的Bug

  1. 数码管显示模糊:使用了未定义的变量。
  2. 时分秒进位不准确:重写N位计数器。
  3. BCD码转换错误:移位数位不正确。
  4. 星期计算错误:月末到新月初计算多出一天。修正蔡乐公式应用。
  5. 时分秒进位问题:同步进位输出设置为reg类型,避免竞争冒险。
  6. 时间调整跳变:按键消抖技术解决。

端口说明

  • ALARM A3

    • 闹钟模块。4个端口分配给步进电机,ALARM连接至备用端口A3。
    • 跳线接入后,闹钟和报时功能正常。
  • 端口1.0

    • M22-K1:修改分钟。
    • N21-K2:修改时钟。
    • ...(更多端口功能描述)...
  • 端口2.0

    • 前四个端口功能保持不变。
    • 新增键盘功能等。

接线顺序

  1. 首先连接15个数码管(DP端不接)。
  2. 接入按键、键盘、按钮。
  3. 接入步进电机(4个管脚)。
  4. 最后连接点阵。