summaryrefslogtreecommitdiff
path: root/blink-16F18xx
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2012-02-08 01:50:44 +0000
committerChristian Pointner <equinox@spreadspace.org>2012-02-08 01:50:44 +0000
commit8843fa890621ff126c9717a35377ae33b97383d6 (patch)
tree08da0cceb6f47d7d55126b22f43c3fe9732bc018 /blink-16F18xx
parentadded otti bicycle led control (diff)
added blink code for new 18xx processor types
git-svn-id: https://svn.spreadspace.org/pic/trunk@11 a09c6847-51d9-44de-8ef2-e725cf50f3c7
Diffstat (limited to 'blink-16F18xx')
-rw-r--r--blink-16F18xx/Makefile28
-rw-r--r--blink-16F18xx/blink.asm84
2 files changed, 112 insertions, 0 deletions
diff --git a/blink-16F18xx/Makefile b/blink-16F18xx/Makefile
new file mode 100644
index 0000000..c4d4eb9
--- /dev/null
+++ b/blink-16F18xx/Makefile
@@ -0,0 +1,28 @@
+##
+## spreadspace pic utils
+##
+##
+## Copyright (C) 2011 Christian Pointner <equinox@spreadspace.org>
+##
+## This file is part of spreadspace pic utils.
+##
+## spreadspace pic utils is free software: you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation, either version 3 of the License, or
+## any later version.
+##
+## spreadspace pic utils is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with spreadspace pic utils. If not, see <http://www.gnu.org/licenses/>.
+##
+
+PROJECT := blink
+PROC_TYPE := 16F1847
+
+include ../include.mk
+
+AFLAGS := $(AFLAGS) -y
diff --git a/blink-16F18xx/blink.asm b/blink-16F18xx/blink.asm
new file mode 100644
index 0000000..4f1f39b
--- /dev/null
+++ b/blink-16F18xx/blink.asm
@@ -0,0 +1,84 @@
+ ;;
+ ;; spreadspace pic utils
+ ;;
+ ;;
+ ;; Copyright (C) 2011 Christian Pointner <equinox@spreadspace.org>
+ ;;
+ ;; This file is part of spreadspace pic utils.
+ ;;
+ ;; spreadspace pic utils is free software: you can redistribute it and/or modify
+ ;; it under the terms of the GNU General Public License as published by
+ ;; the Free Software Foundation, either version 3 of the License, or
+ ;; any later version.
+ ;;
+ ;; spreadspace pic utils is distributed in the hope that it will be useful,
+ ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+ ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ ;; GNU General Public License for more details.
+ ;;
+ ;; You should have received a copy of the GNU General Public License
+ ;; along with spreadspace pic utils. If not, see <http://www.gnu.org/licenses/>.
+ ;;
+ ;; -------------------------------------
+ ;; PREAMBLE
+
+ LIST p=16F1847
+ include "p16f1847.inc"
+ __config _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _CPD_OFF & _BOREN_OFF & _CLKOUTEN_OFF & _IESO_OFF & _FCMEN_OFF
+ __config _CONFIG2, _WRT_OFF & _PLLEN_OFF & _STVREN_OFF & _BORV_LO & _LVP_OFF
+
+
+ ;; -------------------------------------
+ ;; DEFINES
+
+CNT0 EQU H'0020'
+CNT1 EQU H'0021'
+
+ ;; -------------------------------------
+ ;; OFFSET
+ org 0
+
+ ;; -------------------------------------
+ ;; INIT
+init
+ ;; BANK 3
+ movlw b'00000011'
+ movwf BSR
+ clrf ANSELA
+
+ ;; BANK 1
+ movlw b'00000001'
+ movwf BSR
+ movlw b'11111110'
+ movwf TRISA
+
+ ;; BANK 0
+ clrf BSR
+
+ bcf PORTA,0
+
+ ;; -------------------------------------
+ ;; MAINLOOP
+main
+ movlw .50
+ movwf CNT0
+
+outer
+ movlw .255
+ movwf CNT1
+
+inner
+ decfsz CNT1,f
+ goto inner
+
+ decfsz CNT0,f
+ goto outer
+
+ movlw b'00000001'
+ xorwf PORTA,f
+
+ goto main
+
+ ;; -------------------------------------
+ ;; END
+ end