Initial commit
This commit is contained in:
commit
4b49d4e946
3 changed files with 62 additions and 0 deletions
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
|||
build
|
||||
*~
|
40
CMakeLists.txt
Normal file
40
CMakeLists.txt
Normal file
|
@ -0,0 +1,40 @@
|
|||
cmake_minimum_required(VERSION 2.8.3)
|
||||
|
||||
|
||||
SET(BOARD "atmega328" CACHE STRING "AVR CPU to build for")
|
||||
SET(CLOCK "16000000" CACHE STRING "CPU clock")
|
||||
|
||||
SET(FLASH_FLAGS "-patmega328p" "-carduino" "-P/dev/ttyUSB0" "-b57600" CACHE STRING "avrdude flags")
|
||||
|
||||
|
||||
find_program(AVR_GCC avr-gcc)
|
||||
find_program(AVRDUDE avrdude)
|
||||
|
||||
SET(CMAKE_SYSTEM_NAME Generic)
|
||||
|
||||
|
||||
#SET(CWARN "-Wall")
|
||||
#SET(CTUNING "-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums")
|
||||
#SET(COPT "-Os")
|
||||
#SET(CMCU "-mmcu=${BOARD}")
|
||||
#SET(CDEFS "-DF_CPU=${CLOCK}")
|
||||
|
||||
SET(CMAKE_C_COMPILER ${AVR_GCC})
|
||||
|
||||
project(ARDKBD C)
|
||||
|
||||
set(CMAKE_MODULE_PATH ${ARDKDB_SOURCE_DIR})
|
||||
|
||||
|
||||
add_executable(ardkbd.elf
|
||||
ardkbd.c
|
||||
)
|
||||
set_target_properties(ardkbd.elf PROPERTIES
|
||||
COMPILE_FLAGS "-Wall -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Os -mmcu=${BOARD}"
|
||||
COMPILE_DEFINITIONS "F_CPU=${CLOCK}"
|
||||
)
|
||||
|
||||
add_custom_command(OUTPUT ardkbd.hex COMMAND ${CMAKE_OBJCOPY} -O ihex -R .eeprom ardkbd.elf ardkbd.hex DEPENDS ardkbd.elf)
|
||||
add_custom_target(ardkbd ALL DEPENDS ardkbd.hex)
|
||||
|
||||
add_custom_target(flash COMMAND ${AVRDUDE} ${FLASH_FLAGS} -D -Uflash:w:ardkbd.hex:i DEPENDS ardkbd)
|
20
ardkbd.c
Normal file
20
ardkbd.c
Normal file
|
@ -0,0 +1,20 @@
|
|||
#include <avr/io.h>
|
||||
#include <util/delay.h>
|
||||
|
||||
|
||||
#include <stdbool.h>
|
||||
|
||||
|
||||
|
||||
int main() {
|
||||
DDRB = 0xFF;
|
||||
PORTB = 0;
|
||||
|
||||
while(true) {
|
||||
_delay_ms(1000);
|
||||
PORTB ^= 0x20;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Reference in a new issue