This document provides an outline and overview of the topics that will be covered in Lecture 6 of the CSE P567 course, including the ATmega328 architecture, I/O pins, the Arduino C++ language, and timing functions. It discusses the ATmega328's Harvard architecture with separate flash, SRAM, and EEPROM memory spaces. It describes the AVR CPU, registers, addressing modes, instruction set, and I/O functionality. It also covers the Arduino development board's pin mapping and digital/analog I/O functions.
Introduction to Embedded C for 8051 and Implementation of Timer and Interrupt...Sivaranjan Goswami
In this tutorial first an introduction to Embedded C is given. A few examples are shown. Then the implementation of timer and interrupt are discussed.
For more tutorials visit:
https://sites.google.com/site/enggprojectece
Join this video course on Udemy. Click the below link
https://www.udemy.com/embedded-system-programming-on-arm-cortex-m3m4/?couponCode=SLIDESHARE
This presentation course covers full architectural and internal details of one of the most famous processor ARM Cortex M3 and M4. Processor core, NVIC, Register set, Bus interfaces, AHB,APB,SYS BUS,Interrupts,memory fully explained.
8051 programming skills using EMBEDDED CAman Sharma
It contains basic programming tips for embedded c for those who are just into it and don't know much about it....have a look in it and u will surely find it easy.
Best-embedded-corporate-training-in-mumbaiUnmesh Baile
Vibrant Technologies is headquarterd in Mumbai,India.We are the best Embedded System training provider in Navi Mumbai who provides Live Projects to students.We provide Corporate Training also.We are Best Embedded System Programming classes in Mumbai according to our students and corporators
Introduction to Embedded C for 8051 and Implementation of Timer and Interrupt...Sivaranjan Goswami
In this tutorial first an introduction to Embedded C is given. A few examples are shown. Then the implementation of timer and interrupt are discussed.
For more tutorials visit:
https://sites.google.com/site/enggprojectece
Join this video course on Udemy. Click the below link
https://www.udemy.com/embedded-system-programming-on-arm-cortex-m3m4/?couponCode=SLIDESHARE
This presentation course covers full architectural and internal details of one of the most famous processor ARM Cortex M3 and M4. Processor core, NVIC, Register set, Bus interfaces, AHB,APB,SYS BUS,Interrupts,memory fully explained.
8051 programming skills using EMBEDDED CAman Sharma
It contains basic programming tips for embedded c for those who are just into it and don't know much about it....have a look in it and u will surely find it easy.
Best-embedded-corporate-training-in-mumbaiUnmesh Baile
Vibrant Technologies is headquarterd in Mumbai,India.We are the best Embedded System training provider in Navi Mumbai who provides Live Projects to students.We provide Corporate Training also.We are Best Embedded System Programming classes in Mumbai according to our students and corporators
Embedded system course projects - Arduino CourseElaf A.Saeed
• Arduino IDE.
• P1-Arduino with led.
• P2-Arduino with push button.
• P3-Arduino with potentiometer.
• P4-Arduino with PWM.
• P5-Arduino with LCD.
• P6-Arduino with PIR.
• P7-Arduino with DHT11
• P8-Arduino with LM35.
• P9-Arduino with gas sensor.
• P10-Arduino with dc motor.
• P11-Arduino with Servo Motor.
• P12-Arduino with Bluetooth.
• P13-Arduino with ultrasonic.
• P14-Arduino with IR sensor.
--------------------------------------------------------
Email: elafe1888@gmail.com
linkden: www.linkedin.com/in/elaf-a-saeed-97bbb6150
facebook: https://www.facebook.com/profile.php?id=100004305557442
github: https://github.com/ElafAhmedSaeed
youtube: https://youtube.com/channel/UCE_RiXkyqREUdLAiZcbBqSg
slideshare: https://www.slideshare.net/ElafASaeed
Slideplayer: https://slideplayer.com/search/?q=Elaf+A.Saeed
Google Scholar: https://scholar.google.com/citations?user=VIpVZKkAAAAJ&hl=ar&gmla=AJsN-F7PIgAjWJ44Hzb18fwPqJaaUmG0XzbLdzx09
HEAP SORT ILLUSTRATED WITH HEAPIFY, BUILD HEAP FOR DYNAMIC ARRAYS.
Heap sort is a comparison-based sorting technique based on Binary Heap data structure. It is similar to the selection sort where we first find the minimum element and place the minimum element at the beginning. Repeat the same process for the remaining elements.
Final project report on grocery store management system..pdfKamal Acharya
In today’s fast-changing business environment, it’s extremely important to be able to respond to client needs in the most effective and timely manner. If your customers wish to see your business online and have instant access to your products or services.
Online Grocery Store is an e-commerce website, which retails various grocery products. This project allows viewing various products available enables registered users to purchase desired products instantly using Paytm, UPI payment processor (Instant Pay) and also can place order by using Cash on Delivery (Pay Later) option. This project provides an easy access to Administrators and Managers to view orders placed using Pay Later and Instant Pay options.
In order to develop an e-commerce website, a number of Technologies must be studied and understood. These include multi-tiered architecture, server and client-side scripting techniques, implementation technologies, programming language (such as PHP, HTML, CSS, JavaScript) and MySQL relational databases. This is a project with the objective to develop a basic website where a consumer is provided with a shopping cart website and also to know about the technologies used to develop such a website.
This document will discuss each of the underlying technologies to create and implement an e- commerce website.
Saudi Arabia stands as a titan in the global energy landscape, renowned for its abundant oil and gas resources. It's the largest exporter of petroleum and holds some of the world's most significant reserves. Let's delve into the top 10 oil and gas projects shaping Saudi Arabia's energy future in 2024.
Welcome to WIPAC Monthly the magazine brought to you by the LinkedIn Group Water Industry Process Automation & Control.
In this month's edition, along with this month's industry news to celebrate the 13 years since the group was created we have articles including
A case study of the used of Advanced Process Control at the Wastewater Treatment works at Lleida in Spain
A look back on an article on smart wastewater networks in order to see how the industry has measured up in the interim around the adoption of Digital Transformation in the Water Industry.
Online aptitude test management system project report.pdfKamal Acharya
The purpose of on-line aptitude test system is to take online test in an efficient manner and no time wasting for checking the paper. The main objective of on-line aptitude test system is to efficiently evaluate the candidate thoroughly through a fully automated system that not only saves lot of time but also gives fast results. For students they give papers according to their convenience and time and there is no need of using extra thing like paper, pen etc. This can be used in educational institutions as well as in corporate world. Can be used anywhere any time as it is a web based application (user Location doesn’t matter). No restriction that examiner has to be present when the candidate takes the test.
Every time when lecturers/professors need to conduct examinations they have to sit down think about the questions and then create a whole new set of questions for each and every exam. In some cases the professor may want to give an open book online exam that is the student can take the exam any time anywhere, but the student might have to answer the questions in a limited time period. The professor may want to change the sequence of questions for every student. The problem that a student has is whenever a date for the exam is declared the student has to take it and there is no way he can take it at some other time. This project will create an interface for the examiner to create and store questions in a repository. It will also create an interface for the student to take examinations at his convenience and the questions and/or exams may be timed. Thereby creating an application which can be used by examiners and examinee’s simultaneously.
Examination System is very useful for Teachers/Professors. As in the teaching profession, you are responsible for writing question papers. In the conventional method, you write the question paper on paper, keep question papers separate from answers and all this information you have to keep in a locker to avoid unauthorized access. Using the Examination System you can create a question paper and everything will be written to a single exam file in encrypted format. You can set the General and Administrator password to avoid unauthorized access to your question paper. Every time you start the examination, the program shuffles all the questions and selects them randomly from the database, which reduces the chances of memorizing the questions.
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)MdTanvirMahtab2
This presentation is about the working procedure of Shahjalal Fertilizer Company Limited (SFCL). A Govt. owned Company of Bangladesh Chemical Industries Corporation under Ministry of Industries.
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdffxintegritypublishin
Advancements in technology unveil a myriad of electrical and electronic breakthroughs geared towards efficiently harnessing limited resources to meet human energy demands. The optimization of hybrid solar PV panels and pumped hydro energy supply systems plays a pivotal role in utilizing natural resources effectively. This initiative not only benefits humanity but also fosters environmental sustainability. The study investigated the design optimization of these hybrid systems, focusing on understanding solar radiation patterns, identifying geographical influences on solar radiation, formulating a mathematical model for system optimization, and determining the optimal configuration of PV panels and pumped hydro storage. Through a comparative analysis approach and eight weeks of data collection, the study addressed key research questions related to solar radiation patterns and optimal system design. The findings highlighted regions with heightened solar radiation levels, showcasing substantial potential for power generation and emphasizing the system's efficiency. Optimizing system design significantly boosted power generation, promoted renewable energy utilization, and enhanced energy storage capacity. The study underscored the benefits of optimizing hybrid solar PV panels and pumped hydro energy supply systems for sustainable energy usage. Optimizing the design of solar PV panels and pumped hydro energy supply systems as examined across diverse climatic conditions in a developing country, not only enhances power generation but also improves the integration of renewable energy sources and boosts energy storage capacities, particularly beneficial for less economically prosperous regions. Additionally, the study provides valuable insights for advancing energy research in economically viable areas. Recommendations included conducting site-specific assessments, utilizing advanced modeling tools, implementing regular maintenance protocols, and enhancing communication among system components.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Literature Review Basics and Understanding Reference Management.pptxDr Ramhari Poudyal
Three-day training on academic research focuses on analytical tools at United Technical College, supported by the University Grant Commission, Nepal. 24-26 May 2024
We have compiled the most important slides from each speaker's presentation. This year’s compilation, available for free, captures the key insights and contributions shared during the DfMAy 2024 conference.
23. Stack Pointer Register
Special register in I/O space [3E, 3D]
Enough bits to address data space
Initialized to RAMEND (address of highest memory address)
Instructions that use the stack pointer
24. Program Status Register (PSR)
Status bits set by instructions/Checked by Branch/Skip
instructions
I – Global interrupt enable
T – Flag bit
H – Half carry (BCD arithmetic)
S – Sign
V – Overflow
N – Negative
Z – Zero
C – Carry
26. Single-Cycle ALU Instructions
Most instructions execute in one cycle
Makes program timing calculations (relatively) easy
No cache misses
1 clock/instruction
41. AVR Architecture
Three timers
Very flexible
Choose clock rate
Choose “roll-over” value
Generate interrupts
Generate PWM signals
(represent 8-bit value with
using a clock signal)
More in next lecture…
42. Arduino Timing Functions
delay(ms)
wait for ms milliseconds before continuing
delayMicroseconds(us)
wait for us microseconds before continuing
unsigned long millis( )
return number of milliseconds since program started
unsigned long micros( )
return number of microseconds since program started
resolution of 4 microseconds
43. AVR Architecture
Interface to pins
Each pin directly
programmable
Program direction
Program value
Program pull-ups
Some pins are special
Analog vs. Digital
Clocks
Reset
44. I/O Ports
3 8-bit Ports (B, C, D)
Each port controlled by 3 8-bit registers
Each bit controls one I/O pin
DDRx – Direction register
Defines whether a pin is an input (0) or and output (1)
PINx – Pin input value
Reading this “register” returns value of pin
PORTx – Pin output value
Writing this register sets value of pin
49. Pin Input – PORT controls pullup
off
DDRx = 0
PORTx
PINx
50. I/O Ports
Pullups
If a pin is an input (DDRxi = 0):
PORTxi = 0 – pin is floating
PORTxi = 1 – connects a pullup to the pin
Keeps pin from floating if noone driving
Allows wired-OR bus
Individual bits can be set cleared using bit-ops
A bit can be toggled by writing 1 to PINxi
SBI instruction e.g.
53. Arduino Digital and Analog I/O Pins
Digital pins:
Pins 0 – 7: PORT D [0:7]
Pins 8 – 13: PORT B [0:5]
Pins 14 – 19: PORT C [0:5] (Arduino analog pins 0 – 5)
digital pins 0 and 1 are RX and TX for serial communication
digital pin 13 connected to the base board LED
Digital Pin I/O Functions
pinMode(pin, mode)
Sets pin to INPUT or OUTPUT mode
Writes 1 bit in the DDRx register
digitalWrite(pin, value)
Sets pin value to LOW or HIGH (0 or 1)
Writes 1 bit in the PORTx register
int value = digitalRead(pin)
Reads back pin value (0 or 1)
Read 1 bit in the PINx register
54. Arduino Analog I/O
Analog input pins: 0 – 5
Analog output pins: 3, 5, 6, 9, 10, 11 (digital pins)
Analog input functions
int val = analogRead(pin)
Converts 0 – 5v. voltage to a 10-bit number (0 – 1023)
Don’t use pinMode
analogReference(type)
Used to change how voltage is converted (advanced)
Analog output
analogWrite(pin, value)
value is 0 – 255
Generates a PWM output on digital pin (3, 5, 6, 9, 10, 11)
@490Hz frequency
55. AVR Architecture
Analog inputs
Convert voltage to a
10-bit digital value
Can provide reference
voltages
56. PWM – Pulse Width Modulation
Use one wire to represent a multi-bit value
A clock with a variable duty cycle
Duty cycle used to represent value
We can turn it into a analog voltage using an integrating filter
57. Port Special Functions
Lots of special uses for pins
Clock connections
Timer connections
e.g. comparator output for PWM
Interrupts
Analog references
Serial bus I/Os
USART
PCI
58. Reading and Writing Pins Directly
Only one pin can be changed using the Arduino I/O
functions
Setting multiple pins takes time and instructions
To change multiple pins simultaneously, directly read/write
the pin registers
DDR{A/B/C}
PORT{A/B/C}
PIN{A/B/C}
e.g. to set all digital pins 0 – 7 to a value:
PORTD = B01100101;
59. AVR Architecture
Special I/O support
Serial protocols
Uses special pins
Uses timers
Beyond scope of this
course
60. Arduino C Programs
Arduino calls these “sketches”
Basically C with libraries
Program structure
Header: declarations, includes, etc.
setup()
loop()
Setup is likeVerilog initial
executes once when program starts
loop() is likeVerilog always
continuously re-executed when the end is reached
61. Blink Program
int ledPin = 13; // LED connected to digital pin 13
// The setup() method runs once, when the sketch starts
void setup() {
// initialize the digital pin as an output:
pinMode(ledPin, OUTPUT);
}
// the loop() method runs over and over again,
// as long as the Arduino has power
void loop()
{
digitalWrite(ledPin, HIGH); // set the LED on
delay(1000); // wait for a second
digitalWrite(ledPin, LOW); // set the LED off
delay(1000); // wait for a second
}
62. The Arduino C++ Main Program
int main(void)
{
init();
setup();
for (;;)
loop();
return 0;
}
63. Arduino Serial I/O
Communication with PC via USB serial line
Use the Serial Monitor in the IDE
Or set up a C or Java (or you-name-it) interface
Example Serial library calls
Serial.begin(baud-rate)
9600 default
Serial.println(string)
int foo = Serial.read()
Read one byte (input data is buffered)
See documentation for more