# SmartWord-ESP32
**Repository Path**: BenBuYikk/smart-word-esp32
## Basic Information
- **Project Name**: SmartWord-ESP32
- **Description**: 使用ESP32-C3为主控单片机,配合墨水屏制作的电子单词卡
- **Primary Language**: C
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 6
- **Forks**: 3
- **Created**: 2022-11-26
- **Last Updated**: 2024-08-01
## Categories & Tags
**Categories**: Uncategorized
**Tags**: 墨水屏, 单词卡, esp32-c3
## README
# SmartWord-ESP32
[](https://gitee.com/BenBuYikk/smart-word-esp32)
#### 项目开发原因
由于本人在英语上一直不太开窍,高中时学习英语的方式就是将自己常见的单词记在本上天天观摩,别人背单词,而我在看单词,现在想来,估计时是中国象形文字的学习方式深深的刻在了我的脑子里。
在学习编程的过程中,往往要阅读英文的开源框架文档、电子器件的参考手册等等,一直以来同样在使用高中的学习方式,时间久了发现记事本里积累了不少,但日常的碎片时间无法随时拿出电脑学习,偶然了解到基于墨水屏的电子单词卡,我觉得这就是我一直以来需要的东西。碰巧自己手头有几个ESP32一直再吃灰,借此机会决定自己尝试去制作一台适合自己的电子单词卡。
在此之前我并未使用过ESP32,所以也是想趁此机会学习这款在创客中很火的单片机。由于个人习惯,希望能了解到各个功能的底层实现,所以选择了乐鑫官方的开发框架ESP-IDF。ESP-IDF的底层是乐鑫基于Vanilla FreeRTOS(传统单核FreeRTOS)修改的,支持SMP(对称多处理器)的实时操作系统,但目前还未做到与Vanilla FreeRTOS完全一致,所以我会尽量记录在使用过程中遇到的各个问题与解决方式,供大家参考。
#### 开发平台
主控单片机:ESP32-C3,riscv单核,主频160MHz
墨水屏:微雪2.9寸双色屏幕
#### 开发环境
Windows10 + vscode + Espressif IDF插件
#### 软件框架
ESP-IDF-4.4.3
#### 开源协议
MIT
#### 当前进展
| 日期 | 进展情况 |
| :--------: | :----------------------------------------------------------- |
| 2022.11.24 | 开发计划编写与资料搜集 |
| 2022.12.10 | 1. 采购微雪墨水屏,疫情原因发货延误
2. 根据ESP32-C3技术参考手册,学习此芯片不同外设的使用
3. 根据乐鑫官方资料,学习ESP-IDF框架的SMP-FreeRTOS的使用区别
4. 根据微雪提供的基于STM32的屏幕驱动一直到ESP32-C3平台 |
| 2022.12.12 | 解决了ESP32进行局部刷新时颜色变浅问题 |
| 2023.01.05 | 经历了北京第一波疫情,康复后熬夜能力被削,年终项目进度吃紧,ESP32项目就此进展缓慢 : )
使用FreeRTOS的软件定时器解决了按键中断多次触发问题 |
| 2023.01.17 | 修改了FreeRTOS软件定时器处理按键中断部分
重构了项目工程框架,划分驱动与任务到相应文件中
此版本还不能运行,春节期间会完成后续重构工作 |