Thanks Kenwood120s. I grabbed that library and installed it. I took one of his example sketches (DS1302_LCD) and loaded it straight into my IDE. I used all the rtc connections exactly as he specified them in the sketch, and even left the seed date, time, and DOW exactly as they were. The only change I had to make was to replace the LCD library with my I2C LCD library, and adjust the lcd declaration and begin statements.
It compiled, uploaded, and I saw.... junk. I have taken a few photos of the rtc module, showing pinout, and the connection of those pins to my Arduino, and a few seconds of video showing the utter garbage on the display. I'll try and post them separately, later this evening.
The sketch reads...
#include <LiquidCrystal_I2C.h>
#include <DS1302.h>
// DS1302_LCD
// Copyright (C)2015 Rinky-Dink Electronics, Henning Karlsen. All right reserved
// web: http://www.RinkyDinkElectronics.com/
//
// A quick demo of how to use my DS1302-library to make a quick
// clock using a DS1302 and a 20x4 I2C LCD.
//
// I assume you know how to connect the DS1302 and LCD.
// DS1302: CE pin -> Arduino Digital 2
// I/O pin -> Arduino Digital 3
// SCLK pin -> Arduino Digital 4
// LCD I2C: SDA -> Arduino Analog 4
// SCL -> Arduino Analog 5
// Init the DS1302
DS1302 rtc(2, 3, 4);
// Init the LCD
LiquidCrystal_I2C lcd(0x3F,20,4);
void setup()
{
// Set the clock to run-mode, and disable the write protection
rtc.halt(false);
rtc.writeProtect(false);
// Setup LCD
lcd.begin();
// The following lines can be commented out to use the values already stored in the DS1302
rtc.setDOW(FRIDAY); // Set Day-of-Week to FRIDAY
rtc.setTime(12, 0, 0); // Set the time to 12:00:00 (24hr format)
rtc.setDate(6, 8, 2010); // Set the date to August 6th, 2010
}
void loop()
{
// Display time centered on the upper line
lcd.setCursor(4, 0);
lcd.print(rtc.getTimeStr());
// Display abbreviated Day-of-Week in the lower left corner
lcd.setCursor(0, 1);
lcd.print(rtc.getDOWStr(FORMAT_SHORT));
// Display date in the lower right corner
lcd.setCursor(6, 1);
lcd.print(rtc.getDateStr());
// Wait one second before repeating 
delay (1000);
}