This commit is contained in:
Christoph J. Scherr 2023-10-27 09:50:27 +02:00
parent 4a5d49c28d
commit 7ee12af966
10 changed files with 6146 additions and 2 deletions

View file

@ -5,8 +5,7 @@ BUILD=./build
mkdir -p $BUILD
avr-gcc -mmcu=atmega328p -DF_CPU=16000000L \
-DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR \
-I/home/plex/.arduino15/packages/arduino/hardware/avr/1.8.6/cores/arduino \
-I/home/plex/.arduino15/packages/arduino/hardware/avr/1.8.6/variants/eightanaloginputs \
-I/usr/avr/include \
main.c -o $BUILD/main.elf
avr-objcopy -O ihex -R .eeprom $BUILD/main.elf $BUILD/main.hex

BIN
blink/build/main.elf Executable file

Binary file not shown.

116
blink/build/main.hex Normal file
View file

@ -0,0 +1,116 @@
:100000000C9434000C943E000C943E000C943E0082
:100010000C943E000C943E000C943E000C943E0068
:100020000C943E000C943E000C943E000C943E0058
:100030000C943E000C943E000C943E000C943E0048
:100040000C943E000C943E000C943E000C943E0038
:100050000C943E000C943E000C943E000C943E0028
:100060000C943E000C943E0011241FBECFEFD8E04C
:10007000DEBFCDBF0E9440000C9495030C9400009D
:10008000CF93DF93CDB7DEB7E8970FB6F894DEBF16
:100090000FBECDBF84E290E02FEFFC01208385E20C
:1000A00090E0FC01208185E290E02062FC01208349
:1000B00080E090E0AAEFB3E48BA79CA7ADA7BEA712
:1000C00020E030E04AE755E46BA57CA58DA59EA510
:1000D0000E940003DC01CB018FA798ABA9ABBAABA0
:1000E00020E030E040E85FE36FA578A989A99AA9EC
:1000F0000E947A0281152CF481E090E09CAB8BABDE
:1001000040C020E03FEF4FE757E46FA578A989A9E9
:100110009AA90E94FB02813054F120E030E040E2D5
:1001200051E46BA57CA58DA59EA50E940003DC0172
:10013000CB01BC01CD010E947F02DC01CB019CAB55
:100140008BAB10C080E991E09EAB8DAB8DA99EA9D1
:100150000197F1F79EAB8DAB00008BA99CA901978D
:100160009CAB8BAB8BA99CA9009761F715C06FA5C1
:1001700078A989A99AA90E947F02DC01CB019CABD6
:100180008BAB8BA99CA998AF8FAB8FA998AD01972A
:10019000F1F798AF8FAB000085E290E0FC01208181
:1001A00085E290E02F7DFC01208385E290E0FC0158
:1001B000208185E290E02061FC01208380E090E0D6
:1001C000AAEFB3E48D8F9E8FAF8FB8A320E030E00D
:1001D0004AE755E46D8D7E8D8F8D98A10E940003B6
:1001E000DC01CB0189A39AA3ABA3BCA320E030E040
:1001F00040E85FE369A17AA18BA19CA10E947A02E9
:1002000081152CF481E090E09EA38DA340C020E0F6
:100210003FEF4FE757E469A17AA18BA19CA10E940F
:10022000FB02813054F120E030E040E251E46D8D7A
:100230007E8D8F8D98A10E940003DC01CB01BC0153
:10024000CD010E947F02DC01CB019EA38DA310C0D3
:1002500080E991E098A78FA38FA198A50197F1F766
:1002600098A78FA300008DA19EA101979EA38DA3A7
:100270008DA19EA1009761F715C069A17AA18BA1FC
:100280009CA10E947F02DC01CB019EA38DA38DA1C6
:100290009EA19AA789A789A59AA50197F1F79AA780
:1002A00089A7000085E290E0FC01208185E290E0D2
:1002B0002F7EFC01208385E290E0FC01208185E215
:1002C00090E02860FC01208380E090E0AAEFB3E496
:1002D0008F87988BA98BBA8B20E030E04AE755E4F2
:1002E0006F85788989899A890E940003DC01CB0196
:1002F0008B8B9C8BAD8BBE8B20E030E040E85FE3C6
:100300006B897C898D899E890E947A0281152CF4E3
:1003100081E090E0988F8F8B40C020E03FEF4FE767
:1003200057E46B897C898D899E890E94FB0281300C
:1003300054F120E030E040E251E46F85788989890A
:100340009A890E940003DC01CB01BC01CD010E940F
:100350007F02DC01CB01988F8F8B10C080E991E088
:100360009A8F898F898D9A8D0197F1F79A8F898F4E
:1003700000008F89988D0197988F8F8B8F89988D2A
:10038000009761F715C06B897C898D899E890E94D1
:100390007F02DC01CB01988F8F8B8F89988D9C8F8A
:1003A0008B8F8B8D9C8D0197F1F79C8F8B8F00002D
:1003B00085E290E0FC01208185E290E0277FFC014E
:1003C000208385E290E0FC01208185E290E02860B6
:1003D000FC01208385E290E0FC01208185E290E031
:1003E0002061FC01208380E090E0AAEFB3E48983E0
:1003F0009A83AB83BC8320E030E04AE755E469810F
:100400007A818B819C810E940003DC01CB018D836A
:100410009E83AF83B88720E030E040E85FE36D81E2
:100420007E818F8198850E947A0281152CF481E06B
:1004300090E09A87898740C020E03FEF4FE757E47C
:100440006D817E818F8198850E94FB02813054F1FD
:1004500020E030E040E251E469817A818B819C8127
:100460000E940003DC01CB01BC01CD010E947F0290
:10047000DC01CB019A87898710C080E991E09C87D5
:100480008B878B859C850197F1F79C878B87000074
:1004900089859A8501979A87898789859A850097A2
:1004A00061F715C06D817E818F8198850E947F02E2
:1004B000DC01CB019A87898789859A859E878D87FC
:1004C0008D859E850197F1F79E878D87000085E2D7
:1004D00090E0FC01208185E290E0277FFC012083F1
:1004E00085E290E0FC01208185E290E02F7EFC0116
:1004F0002083D5CD0E94AE0208F481E008950E94C9
:10050000DA0288F09F5798F0B92F9927B751B0F0C9
:10051000E1F0660F771F881F991F1AF0BA95C9F787
:1005200014C0B13091F00E94F402B1E008950C942F
:10053000F402672F782F8827B85F39F0B93FCCF3E2
:10054000869577956795B395D9F73EF49095809504
:10055000709561957F4F8F4F9F4F0895990F0008B9
:10056000550FAA0BE0E8FEEF16161706E807F90785
:10057000C0F012161306E407F50798F0621B730B20
:10058000840B950B39F40A2661F0232B242B252BA1
:1005900021F408950A2609F4A140A6958FEF811D44
:1005A000811D089557FD9058440F551F59F05F3F26
:1005B00071F04795880F97FB991F61F09F3F79F085
:1005C00087950895121613061406551FF2CF469507
:1005D000F1DF08C0161617061806991FF1CF869589
:1005E0007105610508940895E894BB27662777276D
:1005F000CB0197F908950E94AE0208F48FEF089599
:100600000E9413030C9484030E94760338F00E9426
:100610007D0320F0952311F00C946D030C9473036B
:1006200011240C94F5020E94D20270F3959FC1F33D
:10063000950F50E0551F629FF001729FBB27F00D90
:10064000B11D639FAA27F00DB11DAA1F649F6627E5
:10065000B00DA11D661F829F2227B00DA11D621F34
:10066000739FB00DA11D621F839FA00D611D221FEE
:10067000749F3327A00D611D231F849F600D211DD2
:10068000822F762F6A2F11249F5750409AF0F1F055
:1006900088234AF0EE0FFF1FBB1F661F771F881FBE
:1006A00091505040A9F79E3F510580F00C946D0386
:1006B0000C94F5025F3FE4F3983ED4F3869577956A
:1006C0006795B795F795E7959F5FC1F7FE2B880F64
:1006D000911D9695879597F9089597F99F6780E8FA
:1006E00070E060E008959FEF80EC089500240A9484
:1006F0001616170618060906089500240A941216FD
:100700001306140605060895092E0394000C11F42F
:10071000882352F0BB0F40F4BF2B11F460FF04C0DC
:0E0720006F5F7F4F8F4F9F4F0895F894FFCF6C
:00000001FF

2985
blink/build/main.o Normal file

File diff suppressed because it is too large Load diff

17
buttons/build.sh Executable file
View file

@ -0,0 +1,17 @@
#!/bin/bash
set -e
TDIR=$(mktemp -d)
BUILD=./build
mkdir -p $BUILD
avr-gcc -mmcu=atmega328p -DF_CPU=16000000L \
-DARDUINO=10607 -DARDUINO_AVR_NANO -DARDUINO_ARCH_AVR \
-I/usr/avr/include \
main.c -o $BUILD/main.elf
avr-objcopy -O ihex -R .eeprom $BUILD/main.elf $BUILD/main.hex
avr-size -A $BUILD/main.elf
avrdude \
"-C/home/plex/.arduino15/packages/arduino/tools/avrdude/6.3.0-arduino17/etc/avrdude.conf" -v -V \
-patmega328p -carduino -P/dev/ttyUSB0 -b57600 -D \
-Uflash:w:$BUILD/main.hex:i

BIN
buttons/build/main.elf Executable file

Binary file not shown.

18
buttons/build/main.hex Normal file
View file

@ -0,0 +1,18 @@
:100000000C9434000C943E000C943E000C943E0082
:100010000C943E000C943E000C943E000C943E0068
:100020000C943E000C943E000C943E000C943E0058
:100030000C943E000C943E000C943E000C943E0048
:100040000C943E000C943E000C943E000C943E0038
:100050000C943E000C943E000C943E000C943E0028
:100060000C943E000C943E0011241FBECFEFD8E04C
:10007000DEBFCDBF0E9440000C9481000C940000B4
:10008000CF93DF93CDB7DEB784E290E02FEFFC0192
:1000900020838AE290E0FC0110828BE290E0FC0178
:1000A00020818BE290E02C60FC01208385E290E0CF
:1000B000FC01108289E290E0FC018081882F90E0B1
:1000C00084709927009749F485E290E0FC01208133
:1000D00085E290E02062FC01208389E290E0FC014F
:1000E0008081882F90E088709927009719F785E222
:1000F00090E0FC01208185E290E02F7DFC012083CF
:06010000D9CFF894FFCFF7
:00000001FF

2985
buttons/build/main.o Normal file

File diff suppressed because it is too large Load diff

24
buttons/main.c Normal file
View file

@ -0,0 +1,24 @@
#define F_CPU 16000000UL
#include <avr/io.h>
#include <util/delay.h>
int main(void)
{
DDRB = 0xff;
DDRD = 0;
PORTD |= (1 << PORTD2) | (1 << PORTD3);
PORTB = 0;
while (1)
{
if (! (PIND & (1 << PIND2))) {
PORTB |= (1 << PORTB5);
}
if (! (PIND & (1 << PIND3))) {
PORTB &= ~(1 << PORTB5);
}
}
}