Author Topic: Programmable clock project  (Read 6515 times)

0 Members and 1 Guest are viewing this topic.

Offline Spyro543

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1189
  • Rating: +74/-3
    • View Profile
Programmable clock project
« on: January 10, 2013, 08:07:15 am »
I only have a few minutes to post this so don't expect much detail.
This is a hardware project I HAVE ACTUALLY STARTED. It is a small device with a 2 line by 16 character LCD, powered by a pic18f26k20 and has 6 buttons. You will be able to do simple BASIC programming on it. Not much more for now, but pics later, maybe tomorrow.
« Last Edit: January 11, 2013, 09:31:59 am by Spyro543 »

Offline Keoni29

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2466
  • Rating: +291/-16
    • View Profile
    • My electronics projects at 8times8
Re: Programmable clock project
« Reply #1 on: January 10, 2013, 08:12:30 am »
"with 6 buttons, powered by a pic18f46k20 and has 6 buttons"
*writes it down* This is obviously very important :)
How big is it gonna be?
If you like my work: why not give me an internet?








Offline Spyro543

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1189
  • Rating: +74/-3
    • View Profile
Re: Programmable clock project
« Reply #2 on: January 10, 2013, 09:01:04 am »
Oops. I'm not too sure about size, since it's all sprawled out on a breadboard now.

Offline Keoni29

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2466
  • Rating: +291/-16
    • View Profile
    • My electronics projects at 8times8
Re: Programmable clock project
« Reply #3 on: January 11, 2013, 03:56:01 am »
Will it fit behind the lcd module or is or is it gonna be a slightly larger, but still pocket size device? I guess you use DIP components. Can we have a look at the breadboard setup?
If you like my work: why not give me an internet?








Offline Spyro543

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1189
  • Rating: +74/-3
    • View Profile
Re: Programmable clock project
« Reply #4 on: January 11, 2013, 07:30:20 am »
Sorry not now. I dismantled everything to set up a new breadboard setup, and I Won't be able to put it back together, because me and my friends are having a "nerd-fest" at my house (D&D and Minecraft from 3:00 pm today to noon tomorrow.

Offline Spyro543

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1189
  • Rating: +74/-3
    • View Profile
Re: Programmable clock project
« Reply #5 on: January 11, 2013, 09:27:27 am »
Sorry for double post, but mockups (yay) of what the UI could possibly look like.
The screen is 2 lines, each with 16 characters each.

Spoiler For LOTS OF MOCKUPS:
Mockup of main menu:
----------------
>CLOCK PROGRAM
 STOPWATCH INFO
----------------
CLOCK: Display and set the date and time.
PROGRAM: Edit and run programs.
STOPWATCH: Stopwatch :P
INFO: Shows free program memory and software version.

Mockup of clock function:
----------------
10:55:00 AM
01/11/13     SET
----------------
Press the right soft key (in this screen, it's labelled SET) to set the date and time.

Mockup of setting time:
----------------
SET TIME
<10>55:00 AM
----------------
The date section surrounded by < > can be changed. Use the OK button to scroll to next field.

Mockup of setting date:
----------------
SET DATE
<01>/11/13
----------------
The date section surrounded by < > can be changed. Use the OK button to scroll to next field.

Mockup of program slot list:
----------------
PRGM SLOT <1/3>
EDIT   RUN   CLR
----------------
EDIT: Edit the program.
RUN: Run the program.
CLR: Erase the program in the program slot.

Mockup of editing a program:
----------------
>
DEL 001/999  CMD
----------------
The ">" on the top line is where the command that is currently open is being shown.
DEL: Backspace. Clear this step in the program.
CMD: Open up a menu where commands can be selected and added to the program.
001/999: Shows what step is currently shown on screen. A program can have a maximum of 999 steps (commands).

Mockup of command menu:
----------------
<1/3> COMMAND
BACK        OPEN
----------------
There are three categories of commands: COMMAND (stuff like print and getkey), VARIABLE (variables, ->, DELVAR), and NUMERAL (numbers 0-9, +-*/=, and < > <= >= !=)

Mockup of stopwatch:
----------------
00:00.00
START      RESET
----------------
Top line shows amount of time measured.
START: Starts the stopwatch. Changes to "PAUSE" when stopwatch is running.
RESET: Sets stopwatch back to 0.

Mockup of info screen:
----------------
FREE MEM: 1024 B
VERS: 00.00
----------------

FREE MEM: How much memory is left in the data EEPROM.
VERS: Software version.

Spoiler For What all the buttons do!:
There are 6 buttons. Here's what they are:
2 Soft Keys: These act just like the soft keys on a phone. Their usage is shown at the bottom of the screen.
2 Arrow Keys (left and right): Navigate left and right or increase or decrease a value.
OK Key: Accepts currently highlighted option.
Menu Key: Shows the Main Menu.

Offline imo_inx

  • Manman, SaviourOfTheMultiverse!
  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 473
  • Rating: +27/-8
  • imo_inx
    • View Profile
Re: Programmable clock project
« Reply #6 on: January 11, 2013, 11:42:20 am »
You need a keyboard port/dock for it to program.


Offline Keoni29

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2466
  • Rating: +291/-16
    • View Profile
    • My electronics projects at 8times8
Re: Programmable clock project
« Reply #7 on: January 11, 2013, 11:43:07 am »
You need a keyboard port/dock for it to program.
No. He told me that you can program it in a similar way you program on a calculator. By picking commands from lists.
« Last Edit: January 11, 2013, 11:43:23 am by Keoni29 »
If you like my work: why not give me an internet?








Offline imo_inx

  • Manman, SaviourOfTheMultiverse!
  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 473
  • Rating: +27/-8
  • imo_inx
    • View Profile
Re: Programmable clock project
« Reply #8 on: January 11, 2013, 11:47:17 am »
You need a keyboard port/dock for it to program.
No. He told me that you can program it in a similar way you program on a calculator. By picking commands from lists.
Yes, but you still need to type some text in for some programs. We actually discussed it already.


Offline lkj

  • LV6 Super Member (Next: 500)
  • ******
  • Posts: 485
  • Rating: +58/-1
    • View Profile
Re: Programmable clock project
« Reply #9 on: January 11, 2013, 12:06:53 pm »
You could put everything you ever need to type in menus (e.g. numbers, letters for strings, ...).

Offline Keoni29

  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2466
  • Rating: +291/-16
    • View Profile
    • My electronics projects at 8times8
Re: Programmable clock project
« Reply #10 on: January 11, 2013, 12:57:22 pm »
Indeed :)
If you like my work: why not give me an internet?








Offline Spyro543

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1189
  • Rating: +74/-3
    • View Profile
Re: Programmable clock project
« Reply #11 on: January 11, 2013, 02:20:50 pm »
It would be nice to have a dock-like detachable keypad though. For entering lots o' numbers or letters.

Offline ben_g

  • Hey cool I can set a custom title now :)
  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1002
  • Rating: +125/-4
  • Asm noob
    • View Profile
    • Our programmer's team: GameCommandoSquad
Re: Programmable clock project
« Reply #12 on: January 11, 2013, 02:43:31 pm »
With only 1024 bytes of program memory, I don't think you'll need a lot of numbers or letters.
My projects
 - The Lost Survivors (Unreal Engine) ACTIVE [GameCommandoSquad main project]
 - Oxo, with single-calc multiplayer and AI (axe) RELEASED (screenshot) (topic)
 - An android version of oxo (java)  ACTIVE
 - A 3D collision detection library (axe) RELEASED! (topic)(screenshot)(more recent screenshot)(screenshot of it being used in a tilemapper)
Spoiler For inactive:
- A first person shooter with a polygon-based 3d engine. (z80, will probably be recoded in axe using GLib) ON HOLD (screenshot)
 - A java MORPG. (pc) DEEP COMA(read more)(screenshot)
 - a minecraft game in axe DEAD (source code available)
 - a 3D racing game (axe) ON HOLD (outdated screenshot of asm version)

This signature was last updated on 20/04/2015 and may be outdated

Offline Spyro543

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1189
  • Rating: +74/-3
    • View Profile
Re: Programmable clock project
« Reply #13 on: January 11, 2013, 03:04:28 pm »
1 Token = 1 Byte. So 1 Program will take up almost all the memory.

Offline AngelFish

  • Is this my custom title?
  • Administrator
  • LV12 Extreme Poster (Next: 5000)
  • ************
  • Posts: 3242
  • Rating: +270/-27
  • I'm a Fishbot
    • View Profile
Re: Programmable clock project
« Reply #14 on: January 11, 2013, 03:31:15 pm »
1 Token = 1 Byte. So 1 Program will take up almost all the memory.

In TI-BASIC, yes. Not if you use any sort of compressed format and dynamically decompress text as needed.
∂²Ψ    -(2m(V(x)-E)Ψ
---  = -------------
∂x²        ℏ²Ψ