10000 GitHub - adithi-su/COSH-PLC-Project: assignments and practice stuff
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

adithi-su/COSH-PLC-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 

Repository files navigation

COSH-PLC-Project

Atoliic TrueStudio, STL Linker, STM32F407 Discovery Kit
Project installation files - https://drive.google.com/drive/folders/1Qda3X5TBNdP7TIRw4iMCDkEmkc2ffdsa?usp=sharing

25.1.22
Open source H/W development
PLC (Programmable logic controller)
STM 32 - ARM 32 bit controller
ARM single core -> multicore -> (multi stage boot processing?) -> integrate with real time OS -> design and dev of device drivers
Industrial applications - GPIU, UART drivers, developing small library routines (test with STM devices)
To-Do:
Revise C
bitwise, unions, fxn prototypes
learn how to read datasheets

Edit-
STM32F407 pin structure, datasheet - go through

22.2.22
Call led APIs
Call different leds for different tasks
Suspend it for a few seconds 1000ms
4 tasks - one by one using rtos
To check if the scheduler is working fine

Fix1: heap error
Make a new folder and add these files : libs.ld; men.ld; sections.ld
Project -> Properties -> C/C++ Build -> Settings -> Tool settings -> C Linker -> append by adding -T “location\of\the\3files” separately
Fix2: calling stlmain(); in main
Include this prototype -
extern void stlmain(void);

25.2.22
Tasks:
Offline - becomes active if event occurs for that; event driven task
Periodic- becomes active when timer expires /timeout happens
Online and background- cycle repeats automatically
Offline class will work without timer by suspending for 1 sec. Similarly for periodic.
Note : this is not freeRTOS
Edit - read up on rtos scheduling
suspend works, millisec delay doesn't. why??

1.3.22
task to be done - write a timer function.
Go through the datasheet and understand timers. Timer #2.
Implement for periodic functions.

Online:
T1 Blue LED ON
T2 Red LED ON
T3 Green LED ON
T4 Yellow LED ON
Offline: T5 Blue LED OFF
PRDC: T6 Red LED OFF
BGND: T7 all LEDs OFF
Assignments:

  1. Test all the task functions
  2. Learn how timer software is coded
  3. Start UART concept in STM32

write UART driver ( printf statements)
learn how to make GPIO connections to RS232 serial cable
HAL interface
GPIO based drivers

25.4.22
Tera Term setup -
Receive tab - Auto
Transmit tab - CR + LF
rest - default
need to write IRQ interrupts (GPIO based)
whenever the pin is high/low, interrupt s/w is needed
interrupts - asynchronous time
periodic task - configure period and print
IRQ - only for offline tasks

About

assignments and practice stuff

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
0