Select Page

 

Latest From My Blog


Art of Technology

Python Automation – Code Snippet – Return List of Files in Directory by Extension

This is a Python Code Snippet that will return a list of files based on extension from a directory including full path. #Usage yourlist = return_file_list_by_ext("directory",".ext") def return_file_list_by_ext(directory,ext): import os file_list = [] for file in...

Automation With Powershell and Python – Step 1 Have a Plan

I have been working with computers and other technologies going on 35 years now… I get a kick out of automating stuff. If you want to do more with less - or not have to worry about the boring stuff. Or even if you are not doing the time sucking task - but you want to...

PIC10F322 and XC8 Code – Light Activated Switch

Using the ADC module in the PIC10F322 – we are going to use a photoresistor (see previous post on Using A Photoresistor) and a Potentiometer (another post here about it) – that will turn on and off a LED based on the amount of light. The trigger point is adjustable...

PIC10F322 and XC8 Code – Adjustable Push Button Timer

We are going to take what we have done with the ADC and expand it some more and add in a button and the interrupt base timer code from a previous post. The setup… RA0 – LEDRA1 – PotentiometerRA2 – Push Button (tied to ground) (weakpull-up is enabled) High level… Press...

PIC10F322 and XC8 Code – Using ADC and PWM To Control LED Brightness

In my other post – PIC10F322 XC8 Analog-to-Digital Converter (ADC) Getting Started. I went over the basics of getting up and going with the ADC on the PIC10F322. The code read the value from a potentiometer and if the value was over a certain range – turn on the LED....

PIC10F322 XC8 Analog-to-Digital Converter (ADC) Getting Started

The PIC10F322 Analog-to-Digital Converter has three selectable external analog channels. This allows you to convert an analog signal (voltage) to an 8bit value (0 – 255) that you can use – to do whatever you dream up. Here is the process that enables the ADC on...

PIC10F322 XC8 Interrupt Based Delay Timer

In the previous post I wrote about using the PIC10F322 Interrupt. In this post is the the complete code that will use timer0, to replace the __delay_ms() macro. Why would we want to replace the __delay_ms() macro? The macro has some limitations, great if you want to...

PIC10F322 XC8 Interrupts – Overview

Here is a quick overview of how to get interrupts going in XC8. You will need to define your interrupt function or handler in your code. void __interrupt () isr_routine (void) { } The name isr_routine can be anything you want, however __interrupt () is very important...

PIC10F322 Applications – Cascaded Timer

PIC10F322 Cascaded Timer – when input on PORT.A2 goes low – PORT.A0 will go high, for 1 second, then LOW, Then PORT.A1 will go high, for one second, then LOW. The on time can be changed by adjusting the PulseOut_Time. Of course you can move the input to PORT.A3 and...

Understanding XC8 MPLAB C Header Files

Received a question about – How to separate a program into multiple files. Simple programs can be put in a single file, but when your program grows larger, while it isn’t impossible to keep it all in one file, it starts to become a big pain in the rear. The purpose of...

Current Personal Projects

Hydroponics Automation Overview

I have been using hydroponics to grow various herbs, lettuces, and other food plants for some time now. It is a great way to grow fresh veggies. Recently I ventured into designing my own hydroponic systems - as you can see below - this is the test bed I have been...

The White Rabbit

The Gatekeepers

This is an article a wrote a while back. An article I read got me thinking this morning. It was about Epic Games – VS Apple and Google. In which Epic’s game Fortnite has been removed from both online app stores, basically cutting off Epic from roughly, 3.5 billion...

Movement Toward Localized Computing

Is it just me or have you noticed the move toward a central computing model. With AWS, Azure, Google Cloud, etc.. This has been going on for a few years now. Don't get me wrong, it is an affordable way to have data processing, host your application, what ever you want...