Разработка USB-клавиатуры без поиска легкого пути

Помимо полноценных клавиатур, есть клавиатуры с несколькими кнопками, клавиши которых можно запрограммировать. Их называют еще макропадами. Макропад не сложно купить, хоть часто он стоит дороже обычной клавиатуры, но можно и сделать. Статей как его смастерить много, самый простой способ — использовать каждый вывод микроконтроллера, пока они не закончатся. Но у меня не было никакого желания делать все как у всех. Хотелось чего-то по-настоящему DIY. Поэтому в статье пойдет подробный рассказ о разработке USB-клавиатуры на микроконтроллере CH32V003, в котором по умолчанию нет поддержки USB. Но чтобы проект был более интересным, клавиатура состоит из 9 кнопок, 3-х энкодеров и 2-х светодиодов. При этом корпус и кейкапы тоже сделаны самостоятельно (почти). Но стоит еще добавить, что эта статья могла бы и не появится на свет, потому что когда сделал клавиатуру, то она работала с ошибками. Какое-то время я пытался их поправить, но сдался и забросил проект на месяц. Но вернулся с новыми знаниями, исправил ошибку в коде и оно заработало! Поэтому надеюсь, этот проект теперь может заслуживать вашего внимания.

https://habr.com/ru/companies/timeweb/articles/970500/

#DIY #макропад #клавиатура #usb #ch32v003 #rv003usb #timeweb_статьи

Разработка USB-клавиатуры без поиска легкого пути

Помимо полноценных клавиатур, есть клавиатуры с несколькими кнопками, клавиши которых можно запрограммировать. Их называют еще макропадами. Макропад не сложно купить, хоть часто он стоит дороже...

Хабр

I bought a #WCH LinkE USB dongle to program all my #CH32v003 's, and promptly lost it. But I've got some #CH552 boards I bought for making a https://github.com/geoffder/dometyl-keyboard, and they talk USB and have GPIOs, and there's Atmel AVR code for a CH32V003 programmer, which contains a description of the SWIO protocol in terms of AVR assembly, which I don't know yet. And I don't know MCS51 assembly for the CH552 but there's a 300-page architecture manual and a CH552 datasheet, and... I could easily spend a month saving two weeks and $15 USD. I don't even know what to send to the CH32V003 anyway... haven't read the technical reference nor learned RISC-V assembly.

Sigh... I should just do this project with a #STM32 #BluePill and leave the CH32V003 for next time. Now where did I leave those Blue Pills... *facepalm*

Портирование драйвера VL53L1X на CH32V003

Опыт портирования драйвера VL53L1X с STM32 на CH32V003. Рассказываю, как адаптировать низкоуровневые функции I2C, настроить системный таймер для таймаутов и HAL_Delay, а также организовать пример работы через UART. Статья будет полезна тем, кто хочет использовать готовые драйверы STM32 на простых микроконтроллерах

https://habr.com/ru/articles/949312/

#CH32 #ch32v003 #микроконтроллеры #tof #vl53l1x

Портирование драйвера VL53L1X на CH32V003

Введение Для одной небольшой задачи понадобилось подружить лазерный датчик расстояния VL53L1X с микроконтроллером CH32V003. Датчик работает по I2C, и изначально я рассчитывал, что в его даташите будут...

Хабр
i'd like to think no major changes will happen but i expect things being very wrong! still testing components to make sure they work the way i think they do - including tiny #ch32v003 firmware mostly ripped off amazing #ch32fun (btw, #kicad 3d viewer is really awesome; frequently, i am in a loop switching between layout, schema and 3d views) #diy #electronics

Делаем брелок с LED матрицей ярче

В моей прошлой статье про брелок со светодиодной матрицей основной проблемой была яркость. Он очень блекло светил. Мне написали в комментариях много предположений и мне захотелось проверить как можно решить эту проблему. Сначала, я хотел только дополнить первую статью сноской и перечислить, что работает, а что нет, но потом подумал, что лучше оформить это в отдельный и полноценный ответ. Возможно, его будет проще увидеть тем, кому была интересна первая статья. В этой статье сделаем два новых брелка, проверим оригинальную схему с MAX7219, заменим батарейку и посмотрим на отличия разных светодиодных матриц.

https://habr.com/ru/companies/timeweb/articles/944816/

#ch32v003 #arduino #simulide #led_matrix #timeweb_статьи

Делаем брелок с LED матрицей ярче

В моей  прошлой статье про брелок со светодиодной матрицей  основной проблемой была яркость. Он очень блекло светил. Мне написали в комментариях много предположений и мне захотелось...

Хабр

Gee! The calculator got a pretty reliable debouncing system.🤣

https://runtimemicro.com/Planning/Smart-Button-Debounce-Fast

It has also learned to put both the display and itself into deep sleep mode—now I don't turn it off—it turns itself off after 5 minutes of inactivity and wakes up instantly :)

* I don't put #ch32v003 into deep sleep mode because I'm afraid, but normal sleep mode is enough—the battery is large.
#diy #electronics

Знакомство с программным USB на CH32V003

Давно хотел сделать устройство с USB, но больше всего мне казалось интересным это использовать программное USB. И для микроконтроллера CH32V003 давно существует библиотека rv003usb , которая решает эти задачи. В этой статье можно было бы рассказать как делать простейшее USB-устройство на основе её, но эта библиотека заметно больше и предлагает, помимо самой библиотеки, несколько полноценных рабочих программ: загрузчик и программатор. Изначально я думал написать статью после создания готового устройства, но пока им занимался столкнулся с тем, что информации получается много и она интересная, поэтому решил разбить это все на части. Это первая, ознакомительная. Я как всегда начал разработку с прототипов и сделал тестовые платы с USB, чтобы “прощупать почву” и про них сегодня будет разговор. Но ради интереса еще попробуем загрузчик и соберем программатор из этой же библиотеки. Попробуем сделать свой Digispark!

https://habr.com/ru/companies/timeweb/articles/940910/

#ch32v003 #программатор #bootloader #usb #загрузчик #programmer #timeweb_статьи

Знакомство с программным USB на CH32V003

❯ Вступление Давно хотел сделать устройство с USB, но больше всего мне казалось интересным это использовать программное USB. И для микроконтроллера CH32V003 давно существует библиотека  rv003usb...

Хабр

pro tip: don't leave reset floating if the datasheet tells you to not do that

#electronics #ch32v003

This is the #RVPC, a 1 Euro "computer" you can order from #Olimex in Bulgaria. It sports a WCH #CH32V003 #RISCV microcontroller with 16 kB Flash/2 kB RAM, a VGA port, a PS/2 keyboard port and a buzzer. The VGA signal has to be generated entirely in software.

Today I soldered the PCB but didn't have the time to flash it yet. I'll probably flash the #BASIC interpreter first.

Not sure if this is #retrocomputing. Somehow yes, but also no?