All Projects → Soysauce007 → Watchx Nwatch Stm32

Soysauce007 / Watchx Nwatch Stm32

Licence: agpl-3.0
将Nwatch(watch X)移植到到Stm32 上,目前已经可以演示部分效果 https://soysauce007.github.io/nwatch/2020/02/13/NWatch/

Programming Languages

c
50402 projects - #5 most used programming language

Labels

Projects that are alternatives of or similar to Watchx Nwatch Stm32

Avem
🚁 轻量级无人机飞控-[Drone]-[STM32]-[PID]-[BLDC]
Stars: ✭ 465 (+933.33%)
Mutual labels:  stm32
Mqtt via esp01
TCP/UDP Applicaton for UNO/MEGA/STM32 using ESP8266's AT firmware.
Stars: ✭ 23 (-48.89%)
Mutual labels:  stm32
Robot Software
CVRA monorepo - All software running on our bots lives here
Stars: ✭ 39 (-13.33%)
Mutual labels:  stm32
Nanovna
Very Tiny Palmtop Vector Network Analyzer
Stars: ✭ 539 (+1097.78%)
Mutual labels:  stm32
Awesome Embedded
A curated list of awesome embedded programming.
Stars: ✭ 831 (+1746.67%)
Mutual labels:  stm32
Stm32liquidcrystal
Liquid Crystal Library for STM32
Stars: ✭ 24 (-46.67%)
Mutual labels:  stm32
Various mcu debugger diy
各种LInk大合集
Stars: ✭ 402 (+793.33%)
Mutual labels:  stm32
Openre
HandsFree OpenRE Tutorial
Stars: ✭ 41 (-8.89%)
Mutual labels:  stm32
Ntc thermistor
[For Arduino and STM32] Library for working with a NTC thermistor.
Stars: ✭ 19 (-57.78%)
Mutual labels:  stm32
Stm32f469 Usbaudio
Turn a STM32469I-Discovery board into an USB soundcard. Implemented UAC 1.0 asynchronous mode. Support 16/24 bit, 44.1/48/96 kHz stereo PCM audio and volume + mute control.
Stars: ✭ 37 (-17.78%)
Mutual labels:  stm32
Stm32
STM32 stuff
Stars: ✭ 625 (+1288.89%)
Mutual labels:  stm32
Atomvm
Tiny Erlang VM
Stars: ✭ 834 (+1753.33%)
Mutual labels:  stm32
Open Esc Firmware
Stars: ✭ 29 (-35.56%)
Mutual labels:  stm32
Stm32 Bootloader
Customizable Bootloader for STM32 microcontrollers. This example demonstrates how to perform in-application-programming of a firmware located on an external SD card with FAT32 file system.
Stars: ✭ 541 (+1102.22%)
Mutual labels:  stm32
Stm32f103 Usb Cdc Cmsis
STM32F103 USB CDC CMSIS
Stars: ✭ 40 (-11.11%)
Mutual labels:  stm32
Opentoflidar
Open Source TOF Lidar
Stars: ✭ 463 (+928.89%)
Mutual labels:  stm32
Send altitude cocoos
IoT program for Arduino Uno / STM32 Blue Pill (libopencm3) that reads BME280 temperature + humidity + altitude sensors, via I2C or SPI with DMA and multitasking. Sends sensor data to Sigfox via Wisol Sigfox module on UART. Runs on cocoOS task scheduling library http://www.cocoos.net
Stars: ✭ 24 (-46.67%)
Mutual labels:  stm32
Tinygo
Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
Stars: ✭ 9,068 (+20051.11%)
Mutual labels:  stm32
Qcopterremotecontrol
遙控板 RemoteControl,使用 STM32F407VG / STM32F411CE
Stars: ✭ 40 (-11.11%)
Mutual labels:  stm32
Redbeansprout
ARM Cortex-M3/M4 STM32F103C/F303C Development Kit
Stars: ✭ 30 (-33.33%)
Mutual labels:  stm32

移植到Stm32的NWatch

Nwatch

首先感谢zkemble在2015年提供的 NWatch ,真的是太棒了

其次是 crystaledm 提供的c语言库,谢谢

开发环境:

keil5 ALIENTEK 探索者STM32F407开发板 2.4寸tft屏幕

目前已经完成的移植内容为:

RTC时钟、动画显示、断电flash模拟eeprom,及其自带的所有图标

待完成:

闹铃的flash存储,Sleep睡眠模式(低功耗模式),电压检测,音调,音量调节

可实现的效果:

闹钟、手电筒、秒表计时、3D动画演示、游戏(赛车、破坏小球) 设置->日期调整、(睡眠时间设置)、显示设置、版本信息查看、FPS显示

感兴趣的小伙伴可以进群:

我还没创,你自己建吧!

主要的菜单界面可以阅读借鉴:

setting.c 的迭代器函数

static void itemLoader(byte num)   

同时注意

 #define OPTION_COUNT	5

中间的OPTION_COUNT 根据实际情况进行增加减少

  void setMenuOption_P(byte num, const char* name, const b yte* icon, menu_f actionFunc) 

中的actionFunc 根据Go to Definition of "xxxxx" 就可以进入对应的文件进行修改,也可以模仿进行添加文件

还有一种菜单模式,可以借鉴 timedate.c 和 diag.c

在Typedefs.h里面的这几个函数指针需要留意

typedef display_t (*draw_f)(void);
typedef void (*display_f)(void);
typedef bool (*button_f)(void);
typedef void (*menu_f)(void);
typedef void (*itemLoader_f)(byte);

不太懂函数指针的可以查看typedef void (*Fun) (void)

结构体内的函数指针

屏幕移植到oled :

对于想将屏幕移植到oled 的小伙伴,只需要将void oled_flush(void)重写,将oledBuffer[]数组输出到oled屏幕上,将因为手上还没有oled 我在TFT屏幕上模拟了oled 的显示方式,无需修改其他位置

移植到其它stm32单片机:

对于想移植到其它stm32单片机上的小伙伴,需要特别注意appconfig.c中间的eepCheck_SAVE_ADDR 这个偏移地址,请适当调整 EEPROM_CHECK_NUM这个值很玄学,我尝试了很久才出来

移植和改动文件程序的时候需要主要: common.h 对部分预编译效果不满意的可以修改: config.h

其它:

横屏显示的骚操作在 lcd.c LCD_Fast_DrawPoint 里面随便乘以了一个倍数

对了这个lcd.c是我简化过正点原子的库的,对你自己的屏幕需要你找个可以用的屏幕库修改一哈

希望大家疫情期间玩的开心,保重身体!!!

移植了部分在stm32f103上,请移步至:

https://github.com/Soysauce007/Nwatch-Stm32f103

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].